Linux下使用gcc编译找不到头文件,但是查看 系统头文件件存放目录 /usr/local/include 发现头文件确实存在, 这是为什么呢?

这是因为Linux下的默认头文件路径  不包含 /usr/local/include, 默认包含的是/usr/include .

/usr/local 是用来存放本机用户安装的一些 库的 .h文件或库文件。

但是很多开源代码编译时 默认以为头文件都在/usr/include , 导致找不到。

解决办法2种:

1 在/usr/include 下建立 软连接; 此方法还要建立对应lib的软连接, 麻烦。

2 在编译之前的代码时, 指定 安装路径/usr, 如果是用autoconf,

输入 ./configure --prefix=/usr

这样与后面代码的默认include路径保持一致。

Logo

更多推荐