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 中是比较简单的解决方法。如果有其他需要的编译选项也可以加入其中。