MacPorts auf Snow Leopard: rsync Bibliothek nicht geladen libintl
Frage
Nach dem Upgrade auf OS X 10.6, habe ich alle Arten von eigenartigen Fragen mussten MacPorts beziehen, aber die meisten von denen haben, indem Sie einfach den Wiederaufbau der Bibliotheken nach Bedarf gelöst. Es gibt ein Problem, dass ich nicht durch diese Methode zu lösen scheinen kann, und sogar wieder baut alle Häfen, das alte Verzeichnis / opt vollständig zu entfernen, hat keine Wirkung hat:
$ rsync example.com:foo .
Password:
dyld: Library not loaded: /opt/local/lib/libintl.8.dylib
Referenced from: /opt/local/lib/libpopt.0.dylib
Reason: image not found
rsync: connection unexpectedly closed (0 bytes received so far) [Receiver]
rsync error: unexplained error (code 255) at io.c(601) [Receiver=3.0.7]
Die Bibliothek in Frage existiert, obwohl, was wirklich frustrierend ist:
$ otool -L /opt/local/lib/libintl.8.dylib
/opt/local/lib/libintl.8.dylib:
/opt/local/lib/libintl.8.dylib (compatibility version 9.0.0, current version 9.2.0)
/opt/local/lib/libiconv.2.dylib (compatibility version 8.0.0, current version 8.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 124.1.1)
/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 550.0.0)
Dies ist aus dem gettext-Paket, das installiert ist:
$ port provides /opt/local/lib/libintl.8.dylib
/opt/local/lib/libintl.8.dylib is provided by: gettext
$ port installed | grep gettext
gettext @0.17_4+universal (active)
p5-locale-gettext @1.05_0 (active)
Die Dateien sind:
$ ls -l /opt/local/lib/libintl.8.dylib
lrw-r--r-- 1 root admin 19 Jan 12 17:22 /opt/local/lib/libintl.8.dylib@ -> libintl.8.0.2.dylib
$ ls -l /opt/local/lib/libintl.8.0.2.dylib
-rw-r--r-- 2 root admin 98736 Jan 12 17:22 /opt/local/lib/libintl.8.0.2.dylib
Ich habe für Fehler dieser Art gesucht, aber sie scheinen alle Datum erwiesen. Hat jemand dieses Problem gelöst vor?
Lösung
Sie können die „Datei“ Befehl verwenden, um zu sehen, welche Architekturen vorhanden sind in der dylib:
Datei /opt/local/lib/libintl.8.0.2.dylib
Wenn nur ppc und i386 vorhanden sind, während Sie x86_64 benötigen, dann ist die Bibliothek nicht geladen werden kann.