【问题标题】:Compiling Zabbix 5.2 with libxml2 support使用 libxml2 支持编译 Zabbix 5.2
【发布时间】:2020-11-26 14:27:20
【问题描述】:

我在编译以这种方式配置的 Zabbix 5.2 时遇到问题:

# ./configure --enable-server --enable-agent   --with-net-snmp --with-libcurl --with-libxml2 --with-postgresql --with-prefix=/usr/local/zabbix5 --verbose
...
checking for PostgreSQL libraries... yes
checking if PostgreSQL version is >= 9.2... yes
checking for Zabbix server/proxy database selection... ok
checking for multirow insert statements... yes
checking for pkg-config... no
checking for pkg-config... no
configure: error: LIBXML2 library not found

现在我已经安装了libxml2-dev (apt install libxml2-dev)。它确实显示为libxml2-dev:amd64,不知道为什么,因为操作系统是amd64

我尝试设置不同的环境变量,比如export PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig/libxml-2.0.pc(这是libxml2-dev:amd64安装的配置)。

我不知道为什么会发生这种情况或如何解决它。

操作系统:Debian 10 amd64。

【问题讨论】:

标签: xml linux compilation zabbix debian-buster


【解决方案1】:

我刚刚从 Ubuntu 16.04 上的源代码成功安装了 Zabbix 5.2。即使我安装了libxml2-dev 软件包,我也遇到了与您相同的错误。经过一天的寻找解决方案,我在查看错误日志时想到了一个想法:

checking for pkg-config... no
configure: error: LIBXML2 library not found

可能是因为我没有安装pkg-config 包。然后我尝试安装它并再次运行配置命令:

sudo apt install pkg-config

./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-libcurl --with-libxml2=/usr/bin/xml2-config

没想到,配置成功了。

【讨论】:

  • 谢谢,但我之前已经安装了pkg-config,实际上我正在使用它来尝试获取libxml2配置(不成功)。
【解决方案2】:

我解决了这个问题,问题是我使用的源来自 Debian 包 (apt source zabbix-server-pgsql),它们不是从 Zabbix 网站下载的源。

以通常的./configure; make; make install 方式构建时似乎会出现此问题。但是,当我构建 Debian 软件包时,它可以正常工作:

dpkg-buildpackage -us -uc -nc

【讨论】:

    猜你喜欢
    • 2011-11-30
    • 2010-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-15
    • 1970-01-01
    • 2012-06-23
    • 2011-11-02
    相关资源
    最近更新 更多