"Upgraded" to 2.0.3, now MacPorts broken :(

Ryan Schmidt ryandesign at macports.org
Mon Sep 12 01:32:47 PDT 2011

On Sep 11, 2011, at 15:37, Alexander Skwar wrote:

> Earlier today, I wanted to upgrade from Macports 1.9.2 to
> 2.0.3 on my OSX 10.6.8 system. Well, it didn't work out…
> http://pastebin.com/he85hMaP

The curious error here is:

Error: Target org.macports.activate returned: Image error: Source file /opt/local/var/macports/software/libiconv/mpextract3ugNwK7m/opt/local/bin/iconv does not appear to exist (cannot lstat it).  Unable to activate port libiconv.

I'm not sure what that's all about. IS there anything unusual about your system? Are you running a case-sensitive filesystem? Have you replaced /opt or /opt/local or any path inside it with a link to another filesystem?

What if you clean libiconv, uninstall it, and try again? Same error?

sudo port clean libiconv
sudo port -f uninstall libiconv
sudo port install libiconv

I wonder if MacPorts is trying to use MacPorts' own bzip2 to decompress the archive; if so, that of course won't work, as you noted below. As far as I know, MacPorts shouldn't be trying to use a MacPorts copy of bzip2 here; it should be using the copy provided by Mac OS X which should still work. To test whether this is the problem, deactivate bzip2:

sudo port -f deactivate bzip2

Then clean, uninstall, install libiconv again as above.

> As you can see there (or also further down), an update failed.
> Also when I try to start bzip2 or (pretty bad…) bash from
> MacPorts, I get problems:
> MacBook-Pro:~ alex$ /opt/local/bin/bash
> dyld: Library not loaded: /opt/local/lib/libiconv.2.dylib
>  Referenced from: /opt/local/bin/bash
>  Reason: Incompatible library version: bash requires version 8.0.0 or
> later, but libiconv.2.dylib provides version 7.0.0
> Trace/BPT trap
> MacBook-Pro:~ alex$ mdfind -name libiconv.2.dylib
> /Developer/SDKs/MacOSX10.5.sdk/usr/lib/libiconv.2.dylib
> /usr/lib/libiconv.2.dylib
> /Developer/SDKs/MacOSX10.6.sdk/usr/lib/libiconv.2.dylib

This error is a consequence of the first. bash wants MacPorts' libiconv.2.dylib, but because the libiconv port could not be activated as discussed above, that library is not there, and the OS tried to find another copy of libiconv.2.dylib elsewhere, and found the copy provided by Mac OS X, but it is not compatible. The solution will be to get your libiconv port properly activated. 

> I don't have that xcode version from that Apple mac app store,
> but something older.

The only version of Xcode on the Mac App Store today is 4.1.x which requires Lion. For Snow Leopard, ensure you're upgraded to Xcode 3.2.6, available free from Apple Developer Connection.

More information about the macports-users mailing list