[ZBX-4091] agent, get & sender links against unneeded libraries Created: 2011 Aug 31  Updated: 2017 May 30  Resolved: 2011 Sep 15

Status: Closed
Project: ZABBIX BUGS AND ISSUES
Component/s: Agent (G), Installation (I)
Affects Version/s: 1.8.7rc1
Fix Version/s: 1.8.9, 1.9.7 (beta)

Type: Incident report Priority: Blocker
Reporter: richlv Assignee: Unassigned
Resolution: Fixed Votes: 0
Labels: compilation, trivial
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

1. if libcurl development headers are present on the system, libcurl is compiled in zabbix_agent, agentd, get & sender. that, of course, created useless dependencies and increases binary size.

brought in by libcurl just being present :

libcurl.so.4 => /usr/lib/libcurl.so.4 (0xb77bb000)
libidn.so.11 => /usr/lib/libidn.so.11 (0xb75d2000)
libldap-2.4.so.2 => /usr/lib/libldap-2.4.so.2 (0xb758a000)
libgssapi_krb5.so.2 => /usr/lib/libgssapi_krb5.so.2 (0xb7553000)
libssl.so.1.0.0 => /lib/libssl.so.1.0.0 (0xb74fc000)
libcrypto.so.1.0.0 => /lib/libcrypto.so.1.0.0 (0xb735b000)
libz.so.1 => /lib/libz.so.1 (0xb7347000)
libssh2.so.1 => /usr/lib/libssh2.so.1 (0xb7320000)
liblber-2.4.so.2 => /usr/lib/liblber-2.4.so.2 (0xb72f5000)
libsasl2.so.2 => /usr/lib/libsasl2.so.2 (0xb72da000)
libkrb5.so.3 => /usr/lib/libkrb5.so.3 (0xb7211000)
libk5crypto.so.3 => /usr/lib/libk5crypto.so.3 (0xb71e9000)
libcom_err.so.2 => /lib/libcom_err.so.2 (0xb71e4000)
libkrb5support.so.0 => /usr/lib/libkrb5support.so.0 (0xb71db000)
libdl.so.2 => /lib/libdl.so.2 (0xb71d6000)
libkeyutils.so.1 => /lib/libkeyutils.so.1 (0xb71d1000)

totalling 16 libs and ~ 62KB increase in agentd binary, for example

2. there apparently is also some way to link sqlite3 into all these binaries, as has happened with zabbix opensuse package at http://software.opensuse.org/search/download?base=openSUSE%3A11.4&file=server%3A%2Fmonitoring%2FopenSUSE_11.4%2Fi586%2Fzabbix-agent-1.8.5-1.1.i586.rpm&query=zabbix



 Comments   
Comment by richlv [ 2011 Aug 31 ]

same issue was fixed for proxy as ZBX-3218

Comment by Rudolfs Kreicbergs [ 2011 Sep 14 ]

Apparently this example (libCurl) was found in 1.9.* branch where libCurl indeed is needed for the agent. However, it is not needed for get and sender. Will add separate flags for the agent in a similar fashion as done for the server and proxy.

Please create a new ZBX regarding linked sqlite3 - could not reproduce nor find the reason for such behaviour.

Comment by Rudolfs Kreicbergs [ 2011 Sep 14 ]

Fixed in dev branch: svn://svn.zabbix.com/branches/dev/ZBX-4091

Removed linking to libCurl for get and sender. Since simple.c is used in server, proxy and agent code, all of these components need libCurl - currently all components use a single object file for each *.c file.

Comment by Rudolfs Kreicbergs [ 2011 Sep 28 ]

Fixed in pre-1.8.9 r21984 and pre-1.9.7 r21986.

Generated at Sat Apr 27 02:03:24 EEST 2024 using Jira 9.12.4#9120004-sha1:625303b708afdb767e17cb2838290c41888e9ff0.