Linux上使用apt-file查找编译时缺失的依赖库

张开发
2026/4/20 3:19:43 15 分钟阅读

分享文章

Linux上使用apt-file查找编译时缺失的依赖库
前言在Linux上做开发时会遇到依赖库缺失与环境配置问题如报fatal error:xxxxxxx.h:没有那个文件或者目录等错误此时则只能通过提示中缺失的头文件xxxxxxx.h进行缺失依赖库的定位若错误提示的头文件为常用库的头文件则可轻松定位到对应的开发库名称若遇到不常用的依赖库则到处百度亦难以定位具体的依赖库名称从而影响项目研发进度抓狂开发人的最烦的莫过于死活不过的环境配置问题了吧。此处举一个遇到的具体报错实例如下/home/user/Downloads/accounts/build/proc_autogen/EWIEGA46WW/../../../accountsworker.h:10:10: fatal error: com_deepin_daemon_accounts.h: 没有那个文件或目录 #include com_deepin_daemon_accounts.h ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated.解决方法使用apt-file命令进行依赖库的定位命令如下PSyum也有相应的功能若遇到yum工具的系统平台可自行查找相同功能的命令apt-file search xxxxxxx.h apt-file search com_deepin_daemon_accounts.h除了简单的文件查找定位apt-file还支持带路径的文件定位包括相对路径与绝对路径(如果报错提示的路径更全时搜索也指定更全路径这样对依赖的搜索定位更精准)如# 相对路径查找 apt-file search dpkg/db-fsys.h # 绝对路径查找 apt-file search /usr/lib/aarch64-linux-gnu/qt4/bin/lrelease返回依赖库名称为libdframeworkdbus-dev此时再用apt命令进行安装即可useruser-PC:~/Downloads/accounts$ apt-file search com_deepin_daemon_accounts.h libdframeworkdbus-dev: /usr/include/libdframeworkdbus-2.0/com_deepin_daemon_accounts.h

更多文章