libxml2をサポートするZabbix5.2のコンパイル
このように設定されたZabbix5.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
これで()をインストールしました。OSがであるため、理由はわかりませんが、として表示されます。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
です)。
なぜこれが発生するのか、どうすれば修正できるのかわかりません。
OS:Debian 10amd64。
回答
私は問題を解決しました。問題は私が使用したソースがDebianパッケージ(apt source zabbix-server-pgsql
)からのものであり、Zabbixサイトからダウンロードされたソースではありません。
この問題は、通常の./configure; make; make install
方法でビルドするときに発生するようです。ただし、Debianパッケージをビルドすると、問題なく動作します。
dpkg-buildpackage -us -uc -nc
Ubuntu16.04のソースからZabbix5.2を正常にインストールしました。libxml2-dev
パッケージをインストールしたのに、あなたと同じエラーが発生しました。解決策を探して1日過ごした後、エラーログを見てアイデアを思いつきました。
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
驚いたことに、構成は成功しました。