我从 pidgin 源代码创建了一个带有 CDT 的基于 C 的项目。一切正常,但它为以下两个库显示 unresolved inclusion
:
#include <libxml/parser.h>
#include <glib.h>
我该如何解决这个问题?
我无法将 CDT 悬停、打开声明等功能与该库的功能一起使用,必须手动浏览目录。我尝试在项目属性 -> 路径和符号中添加 lib 目录。
最佳答案
首先,您应该确保安装了 glib 和 libxml 的开发包。在 ubuntu 上你可以输入:
apt-get install libxml2-dev libglib2.0-dev
然后你用 pkg-config 观察应该包含哪些目录
~> pkg-config --cflags libxml-2.0
-I/usr/include/libxml2
~> pkg-config --cflags glib-2.0
-I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
以上是要在编译器设置中配置的头文件(在 CDT 中你应该去掉 '-I')。下面是链接器需要的库,因此在 CDT 的链接器设置中配置它们并去掉“-l”
~>pkg-config --libs libxml-2.0
-lxml2
~>pkg-config --libs glib-2.0
-lglib-2.0
如果您仍然遇到 Unresolved inclusion 问题,您应该尝试在 CDT 中清理项目。
顺便说一句:include 目录和库不应在 C/C++-> 路径和符号中配置(尽管这也应该有效)但我总是在 C/C++ 构建-> 设置中配置它们
关于c - eclipse CDT glib 库包含错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4473129/