Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#29071 - pacman: symbol lookup error

Attached to Project: Arch Linux
Opened by marco (paco3) - Friday, 23 March 2012, 11:01 GMT
Last edited by Dave Reisner (falconindy) - Friday, 23 March 2012, 19:22 GMT
Task Type Bug Report
Category Packages: Core
Status Closed
Assigned To Dave Reisner (falconindy)
Architecture x86_64
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
pacman: symbol lookup error: /usr/lib/libssl.so.1.0.0: undefined symbol: EVP_rc4_hmac_md5

Additional info:
* package version(s)

pacman 4.0.2-1

* config and/or log files etc.

sudo pacman -Syu
Password:
:: Sincronizzazione dei database in corso...
pacman: symbol lookup error: /usr/lib/libssl.so.1.0.0: undefined symbol: EVP_rc4_hmac_md5

Steps to reproduce:

from terminal..
$ sudo pacman -Syu
This task depends upon

Closed by  Dave Reisner (falconindy)
Friday, 23 March 2012, 19:22 GMT
Reason for closing:  Not a bug
Additional comments about closing:  User error.
Comment by Allan McRae (Allan) - Friday, 23 March 2012, 11:20 GMT
what version of openssl do you have?
Comment by Giovanni Scafora (giovanni) - Friday, 23 March 2012, 12:00 GMT
I cannot confirm that issue. Here, on my local machines I cannot reproduce that.
The EVP_rc4_hmac_md5 function is correctly defined in /usr/include/openssl/evp.h

const EVP_CIPHER *EVP_rc4_hmac_md5(void);

Also:

readelf -a /usr/lib/libssl.so.1.0.0 | grep EVP_rc4_hmac_md5
000000262918 012700000007 R_X86_64_JUMP_SLO 0000000000000000 EVP_rc4_hmac_md5 + 0
295: 0000000000000000 0 FUNC GLOBAL DEFAULT UND EVP_rc4_hmac_md5
970: 0000000000000000 0 FUNC GLOBAL DEFAULT UND EVP_rc4_hmac_md5

It seems fine.
Comment by marco (paco3) - Friday, 23 March 2012, 14:23 GMT
openssl 1.0.1-1
thanks.
marco.
Comment by Dave Reisner (falconindy) - Friday, 23 March 2012, 17:40 GMT
Did you accidentally strip the library of all its symbols? Can you reproduce the readelf output that Giovanni posted? Output of 'file /usr/lib/libssl.so' would be useful here too...
Comment by marco (paco3) - Friday, 23 March 2012, 17:56 GMT
My readelf output is the same of Giovanni,

readelf -a /usr/lib/libssl.so.1.0.0 | grep EVP_rc4_hmac_md5
000000262918 012700000007 R_X86_64_JUMP_SLO 0000000000000000 EVP_rc4_hmac_md5 + 0
295: 0000000000000000 0 FUNC GLOBAL DEFAULT UND EVP_rc4_hmac_md5
970: 0000000000000000 0 FUNC GLOBAL DEFAULT UND EVP_rc4_hmac_md5
Comment by Dave Reisner (falconindy) - Friday, 23 March 2012, 18:03 GMT
So what library is pacman actually binding to at runtime? need the output of the following

which pacman
ldd /usr/bin/pacman # assuming the previous command actually returns /usr/bin/pacman
Comment by marco (paco3) - Friday, 23 March 2012, 18:40 GMT
marco /usr/lib $ which pacman
/usr/bin/pacman
marco /usr/lib $ ldd /usr/bin/pacman
linux-vdso.so.1 => (0x00007fff2ab48000)
libalpm.so.7 => /usr/lib/libalpm.so.7 (0x00007f5fcc00b000)
libc.so.6 => /lib/libc.so.6 (0x00007f5fcbc6a000)
libcurl.so.4 => /usr/lib/libcurl.so.4 (0x00007f5fcba0f000)
libgpgme.so.11 => /usr/lib/libgpgme.so.11 (0x00007f5fcb7dc000)
libarchive.so.12 => /usr/lib/libarchive.so.12 (0x00007f5fcb554000)
libcrypto.so.1.0.0 => /usr/share/dike/lib/libcrypto.so.1.0.0 (0x00007f5fcb19f000)
/lib/ld-linux-x86-64.so.2 (0x00007f5fcc237000)
libssh2.so.1 => /usr/lib/libssh2.so.1 (0x00007f5fcaf77000)
librt.so.1 => /lib/librt.so.1 (0x00007f5fcad6f000)
libssl.so.1.0.0 => /usr/lib/libssl.so.1.0.0 (0x00007f5fcab06000)
libdl.so.2 => /lib/libdl.so.2 (0x00007f5fca902000)
libz.so.1 => /usr/lib/libz.so.1 (0x00007f5fca6ec000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00007f5fca4d0000)
libassuan.so.0 => /usr/lib/libassuan.so.0 (0x00007f5fca2c0000)
libgpg-error.so.0 => /lib/libgpg-error.so.0 (0x00007f5fca0bd000)
libacl.so.1 => /lib/libacl.so.1 (0x00007f5fc9eb5000)
libattr.so.1 => /lib/libattr.so.1 (0x00007f5fc9cb1000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007f5fc9a87000)
liblzma.so.5 => /usr/lib/liblzma.so.5 (0x00007f5fc9865000)
libbz2.so.1.0 => /lib/libbz2.so.1.0 (0x00007f5fc9655000)
marco /usr/lib $
Comment by Dave Reisner (falconindy) - Friday, 23 March 2012, 18:45 GMT
libcrypto.so.1.0.0 => /usr/share/dike/lib/libcrypto.so.1.0.0 (0x00007f5fcb19f000)

No idea what that is, but that's likely the issue.
Comment by marco (paco3) - Friday, 23 March 2012, 19:13 GMT
Oh yes! I've renamed libcrypto.so.1.0.0 in libcrypto.so.1.0.0.old and now pacman work fine!
Thanks.
Marco.

Loading...