6

I need to implement some web checks in our Zabbix system which requires Zabbix to be compiled with the libcurl (curl) option, but I don't know how to check if it was compiled with this option or not, Is there any command or file which will assist me in finding the answer?

2
  • which distribution are you using? Jul 16, 2014 at 7:15
  • The distribution the server is running is CentOS 6.5 , thanks.
    – Itai Ganot
    Jul 16, 2014 at 7:47

2 Answers 2

4

You need to use ldd(1) to print shared library dependencies. If the zabbix-agent was compiled with curl suppport, it was linked dynamically against the libcurl library in compilation time.

I don't have a zabbix installation handy right now, but the procedure is simple:

# ldd $(which curl)
        linux-vdso.so.1 =>  (0x00007fff4572b000)
        libcurl.so.4 => /lib64/libcurl.so.4 (0x00007f07a4189000)
        libmetalink.so.3 => /lib64/libmetalink.so.3 (0x00007f07a3f7a000)

You should see libcurl in the output. Just replace curl with zabbix-agent.

1
  • Thanks! [root@zabbix ~]# ldd /usr/sbin/zabbix_agent linux-vdso.so.1 => (0x00007ffff93fe000) libcurl.so.4 => /usr/lib64/libcurl.so.4 (0x00007fd773094000)
    – Itai Ganot
    Jul 16, 2014 at 8:02
1

I wanted to expand on dawud's answer, which was correct, but somewhat incomplete.

My environment is Debian Buster amd64 and Zabbix 4.4.5 rev b93f5c4fc0

I needed to see if pre-compiled zabbix_server from Zabbix repo was compiled with libxml2 and libcurl for VMware monitoring, as per this article https://www.zabbix.com/documentation/current/manual/vm_monitoring

So I performed:

# ldd /usr/sbin/zabbix_server | egrep 'libxml2|libcurl'

Which resulted in:

libxml2.so.2 => /usr/lib/x86_64-linux-gnu/libxml2.so.2 (0x00007f784dbd1000)
libcurl.so.4 => /usr/lib/x86_64-linux-gnu/libcurl.so.4 (0x00007f784ce29000)

The same can obviously be done with zabbix_agent

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .