编译 skyeye-1.3.5 出现 glibconfig.h: No such file or directory 问题解决

时间:2022-03-01 09:12:57
skyeye-1.3.5 编译过程中,提示文件未找到:

glibconfig.h: No such file or directory


glibconfig.h 和 gtk.h 一样,是 gtk 界面库的头文件。如果 gtk 已经安装,那么原因就是 编译链接选项没有正确指定 ,因此 gcc 找不到 gtk 的位置。



首先在命令行定位异常:

make[2]: Entering directory '/home/xxx/skyeye-1.3.5_rc1/device'...
glibconfig.h: No such file or directory
...
make[2]: Leaving directory '/home/xxx/skyeye-1.3.5_rc1/device'

异常发生在编译 /home/xxx/skyeye-1.3.5_rc1/device 下的 Makefile 时。



打开这个 Makefile:


cd skyeye-1.3.5_rc1/device
sudo gedit Makefile

加入 gtk 编译选项:

---376: CFLAGS = -g -O2+++376: CFLAGS = -g -O2 `pkg-config --cflags --libs gtk+-2.0`


再编译即可通过。



原来是因为新版本的 gtk 包含文件夹的结构改了,不再是 usr/include 而是用一个 `` (键盘左上角 数字1 左边的字符)来代表解析路径。


其实 查找这个 Makefile 也可以发现具有 "GTK_CFLAGS =" 的编译选项,不过没有赋值。如果愿意手动将其添加到编译命令的话,也可以将 `` 添加到那里。


总之直接将编译选项 `` 加到 CFLAGS 中是比较简单的解决方法。如果有其他需要的编译选项也可以加入其中。