network.so: undefined symbol: gcry_md_hash_buffer
Daniel Kahn Gillmor
dkg at fifthhorseman.net
Thu Jun 17 16:14:19 CEST 2010
On 06/14/2010 09:55 AM, honi@ wrote:
> I am installing collectd-4.10.0 on a CentOS 5 machine:
I don't use collectd or CentOS, but i'm happy to help you debug:
> 4) Restarted collectd and got the following error:
>
> Stopping collectd: [FAILED]
> Starting collectd: /opt/collectd/sbin/collectd: symbol lookup error:
> /opt/collectd/lib/collectd/network.so: undefined symbol: gcry_md_hash_buffer
what output do you get from:
readelf -s /opt/collectd/lib/collectd/network.so | grep md_hash
ldd /opt/collectd/lib/collectd/network.so | grep gcry
readelf -s /usr/lib/libgcrypt.so.11 | grep md_hash
?
when i install debian's packaged collectd 4.9.1-2 on a testing system, i
see this on the equivalent files:
>> 0 dkg at pip:~$ readelf -s /usr/lib/collectd/network.so | grep md_hash
>> 87: 00000000 0 FUNC GLOBAL DEFAULT UND gcry_md_hash_buffer at GCRYPT_1.2 (5)
>> 0 dkg at pip:~$ ldd /usr/lib/collectd/network.so | grep gcry
>> libgcrypt.so.11 => /usr/lib/libgcrypt.so.11 (0xb7661000)
>> 0 dkg at pip:~$ readelf -s /usr/lib/libgcrypt.so.11 | grep md_hash
>> 101: 00006130 115 FUNC GLOBAL DEFAULT 13 gcry_md_hash_buffer@@GCRYPT_1.2
>> 0 dkg at pip:~$
i think these three lines of output mean:
/usr/lib/collectd/network.so expects to see
gcry_md_hash_bufer at GCRYPT1.2 in some library that it will load (it is
undefined internally, hence the "UND")
/usr/lib/collectd/network.so expects to load libgcrypt.so.11, which the
dynamic linker finds in /usr/lib
/usr/lib/libgcrypt.so.11 contains a defined symbol
gcry_md_hash_bufer at GCRYPT1.2
maybe one of these doesn't line up for you somehow?
--dkg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 892 bytes
Desc: OpenPGP digital signature
URL: </pipermail/attachments/20100617/8156aaa6/attachment.pgp>
More information about the Gcrypt-devel
mailing list