Kompilacja Zabbix 5.2 z obsługą libxml2
Mam problem z kompilacją Zabbix 5.2 skonfigurowanego w ten sposób:
# ./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
Teraz już zainstalowany libxml2-dev
( apt install libxml2-dev
). Pojawia się jako libxml2-dev:amd64
, nie wiem dlaczego, ponieważ system operacyjny jest amd64
.
Próbowałem ustawić różne zmienne środowiskowe, takie jak export PKG_CONFIG_PATH=/usr/lib/x86_64-linux-gnu/pkgconfig/libxml-2.0.pc
(to konfiguracja zainstalowana przez libxml2-dev:amd64
).
Nie mam pojęcia, dlaczego tak się dzieje ani jak mogę to naprawić.
System operacyjny: Debian 10 amd64.
Odpowiedzi
Rozwiązałem problem, problem polega na tym, że źródła, których użyłem, pochodzą z pakietu Debiana ( apt source zabbix-server-pgsql
) i nie są to źródła pobrane ze strony Zabbix.
Wydaje się, że ten problem występuje podczas budowania w zwykły ./configure; make; make install
sposób. Jednak kiedy buduję pakiet Debiana, działa dobrze:
dpkg-buildpackage -us -uc -nc
Właśnie pomyślnie zainstalowałem Zabbix 5.2 ze źródeł na Ubuntu 16.04. Otrzymałem również ten sam błąd, co twój, mimo że zainstalowałem libxml2-dev
pakiet. Po całym dniu poszukiwań rozwiązań wpadłem na pomysł, patrząc na dziennik błędów:
checking for pkg-config... no
configure: error: LIBXML2 library not found
Prawdopodobnie dlatego, że nie zainstalowałem pkg-config
pakietu. Następnie próbowałem go zainstalować i ponownie uruchomić polecenie konfiguracyjne:
sudo apt install pkg-config
./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-libcurl --with-libxml2=/usr/bin/xml2-config
O dziwo, konfiguracja się powiodła.