Opened 13 years ago
Last modified 12 years ago
#32391 closed defect
Lion: cyrus-sasl @2.1.23_3+kerberos causes Incompatible library version: LDAP requires version 3.0.0 or later, but libsasl2.2.dylib provides version 0.0.0 — at Version 3
Reported by: | nelson.ferreira@… | Owned by: | jmpp@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.0.3 |
Keywords: | Cc: | landonf@… | |
Port: | cyrus-sasl2 |
Description (last modified by mf2k (Frank Schima))
The summary says it all.
After installing cyrus-sasl I had these errors while losing programs linked to ssl, gone after uninstalling cyrus-sasl.
dyld: Library not loaded: /usr/lib/libsasl2.2.dylib Referenced from: /System/Library/Frameworks/LDAP.framework/Versions/A/LDAP Reason: Incompatible library version: LDAP requires version 3.0.0 or later, but libsasl2.2.dylib provides version 0.0.0
Change History (3)
comment:1 Changed 13 years ago by nelson.ferreira@…
comment:2 Changed 13 years ago by kato23@…
The error is from the buggy pattern matching of a case
command in cyrus-sasl-2.1.23/config/ltconfig
where (on my machine) case "$host_os" in ... darwin[15]* | rhapsody*)
unfortunately matches i386-apple-darwin10.8.0
. The matching expression of the case
command has to be altered to darwin[15].* | rhapsody*)
to prevent this (see http://en.wikipedia.org/wiki/Darwin_(operating_system) for a list of Darwin kernel version numbers).
The same faulty pattern matching code can be found in cyrus-sasl-2.1.23/saslauthd/config/ltconfig
although it does not seem to cause any error there.
To replace your wrongly versioned libsasl2.dylib
with a correctly versioned one try the following:
sudo port -f uninstall cyrus-sasl2 sudo port clean --all cyrus-sasl2 sudo port extract cyrus-sasl2 cd "$(port dir cyrus-sasl2)"/work/cyrus-sasl-2.1.23 /bin/sh config/config.guess # i386-apple-darwin10.8.0 sudo /bin/sh -c 'config/ltconfig config/ltmain.sh' printf '%s\n' H '/\(darwin\[15\]\)/s//\1./g' wq | sudo ed -s config/ltconfig printf '%s\n' H '/\(darwin\[15\]\)/s//\1./g' wq | sudo ed -s saslauthd/config/ltconfig sudo port -f -s install cyrus-sasl2 otool -L /opt/local/lib/libsasl2.dylib # /opt/local/lib/libsasl2.dylib: # /opt/local/lib/libsasl2.2.dylib (compatibility version 3.0.0, current version 3.23.0) # /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.11) # /usr/lib/libresolv.9.dylib (compatibility version 1.0.0, current version 41.1.0) # check for further wrongly versioned dylibs otool -L /opt/local/lib/*.dylib | grep 'compatibility version 0.0.0, current version 0.0.0' | sort -u | nl
comment:3 Changed 13 years ago by mf2k (Frank Schima)
Cc: | landonf@… added |
---|---|
Description: | modified (diff) |
Owner: | changed from macports-tickets@… to jmpp@… |
Port: | cyrus-sasl2 added |
Crash reporter details of an example: