Linux上基于C/C++头文件查找对应的依赖开发库
前言:在Linux上做C/C++开发时会遇到依赖库缺失与环境配置问题,通常会报"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命令进行依赖库的定位,命令如下(PS:yum也有相应的功能,若遇到yum工具的系统平台可自行查找相同功能的命令):
apt-file search xxxxxxx.h
apt-file search com_deepin_daemon_accounts.h
返回依赖库名称为libdframeworkdbus-dev,此时再用apt命令进行安装即可
user@user-PC:~/Downloads/accounts$ apt-file search com_deepin_daemon_accounts.h
libdframeworkdbus-dev: /usr/include/libdframeworkdbus-2.0/com_deepin_daemon_accounts.h