问题描述
我现在正在建立一个简单的C ++项目,试图在其中包含libxml2。 我正在运行Red Hat7。我已经阅读了有关将外部库添加到Eclipse C项目中的各种文章,请参见:
大多数答案都说要向GCC链接器添加库路径,或沿这些方式添加内容。 问题是,尽管我确定它已安装,但我不确定我的libxml2的存储位置。 我的任何尝试都没有,因此在设置中添加库路径没有成功。 这是 。这是 。 我对Red Hat还是很陌生,所以任何帮助将不胜感激。 提前致谢!
1楼
您可以使用
ldconfig -p
找出库位置,即myn像这样(fedora):
$ldconfig -p | egrep -i libxml
libxml2.so.2 (libc6,x86-64) => /lib64/libxml2.so.2
libxml2.so (libc6,x86-64) => /lib64/libxml2.so
libxmlsec1.so.1 (libc6,x86-64) => /lib64/libxmlsec1.so.1
libxmlsec1-openssl.so.1 (libc6,x86-64) => /lib64/libxmlsec1-openssl.so.1
libxmlsec1-openssl.so (libc6,x86-64) => /lib64/libxmlsec1-openssl.so
libxmlsec1-nss.so.1 (libc6,x86-64) => /lib64/libxmlsec1-nss.so.1
libxmlsec1-nss.so (libc6,x86-64) => /lib64/libxmlsec1-nss.so
libxmlrpc_xmltok.so.3 (libc6,x86-64) => /lib64/libxmlrpc_xmltok.so.3
libxmlrpc_xmlparse.so.3 (libc6,x86-64) => /lib64/libxmlrpc_xmlparse.so.3
libxmlrpc_util.so.4 (libc6,x86-64) => /lib64/libxmlrpc_util.so.4
libxmlrpc_server_cgi.so.3 (libc6,x86-64) => /lib64/libxmlrpc_server_cgi.so.3
libxmlrpc_server_abyss.so.3 (libc6,x86-64) => /lib64/libxmlrpc_server_abyss.so.3
libxmlrpc_server.so.3 (libc6,x86-64) => /lib64/libxmlrpc_server.so.3
libxmlrpc_openssl.so.1 (libc6,x86-64) => /lib64/libxmlrpc_openssl.so.1
libxmlrpc_client.so.3 (libc6,x86-64) => /lib64/libxmlrpc_client.so.3
libxmlrpc_abyss.so.3 (libc6,x86-64) => /lib64/libxmlrpc_abyss.so.3
libxmlrpc.so.3 (libc6,x86-64) => /lib64/libxmlrpc.so.3
libxml++-2.6.so.2 (libc6,x86-64) => /lib64/libxml++-2.6.so.2
以下是添加步骤的整个步骤:
使用
new c/c++ project
创建新new c/c++ project
选择
c++ managed build
选择
hello world c++ project
输入项目名称
导航到
properties -> c/c++ build -> settings
选择
GCC C++ Compiler/Includes/Include Paths
添加两个路径:
/usr/include/libxml2/libxml
和/usr/include/libxml2
选择
GCC C++ Linker/Libraries/Libraries
添加
xml2
申请并关闭
重建项目
2楼
您缺少仅与libxml2-devel
软件包一起安装的libxml2.so
符号链接。
由于libxml2位于标准位置,因此您不必将其他路径传递给链接器。
但是,如果包含任何libxml2标头,则必须将/usr/include/libxml2
为自定义包含目录(选项-I
)。