将 libxml 添加到 Red Hat 中的 Eclipse 项目中



我现在设置了一个简单的C++项目,我正在尝试包含libxml2。我正在运行红帽 7。我已经阅读了有关将外部库添加到 Eclipse C 项目的各种文章,请参阅:

  • 如何在 Eclipse Indigo CDT 中设置 libxml C++

大多数答案都说要向GCC链接器添加库路径或类似的东西。问题是,我不完全确定我的libxml2存储在哪里,尽管我确定它已安装。我在设置中添加库路径的所有尝试都没有奏效。这是我的查询,看看libxml2的安装位置,这是我只是浏览我的整个文件系统以找到libxml2。我对红帽还很陌生,所以任何帮助将不胜感激。提前感谢!

您可以使用

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

以下是如何添加的完整步骤:

  1. 使用new c/c++ project创建新项目

  2. 选择c++ managed build

  3. 选择hello world c++ project

  4. 输入项目名称

  5. 导航到properties -> c/c++ build -> settings

  6. 选择GCC C++ Compiler/Includes/Include Paths

  7. 添加两个路径:/usr/include/libxml2/libxml/usr/include/libxml2

  8. 选择GCC C++ Linker/Libraries/Libraries

  9. 添加xml2

  10. 申请并关闭

  11. 重建项目

您缺少仅随libxml2-devel包一起安装的libxml2.so符号链接。由于 libxml2 位于标准位置,因此不必将其他路径传递给链接器。但是,如果包含任何libxml2标头,则必须/usr/include/libxml2添加为自定义包含目录(选项-I(。

最新更新