Trying to rebuild on 10.6
Mark Hattam
mark at dxradio.demon.co.uk
Mon Aug 31 18:02:43 PDT 2009
On 1 Sep 2009, at 01:40, Ryan Schmidt wrote:
> On Aug 31, 2009, at 17:31, Mark Hattam wrote:
>
>> [Time Machined the 10.5.8 before I started ... whew !!]
>>
>> Installed Snowleopard on my 3GHz iMac
>>
>> installed XCode 3.2 from the SnowLeopard DVD
>>
>> installed SnowLeopard .dmg of MacPorts 1.8
>>
>> typed the suggested one line upgrade command from http://trac.macports.org/wiki/Migration
>> sudo port upgrade --force installed
>>
>> it started OK, but then stopped ...
>>
>>
>>
>> ---> Activating libiconv @1.13_0
>> ---> Cleaning libiconv
>> ---> Computing dependencies for db46
>> ---> Fetching db46
>> ---> Verifying checksum(s) for db46
>> ---> Extracting db46
>> ---> Applying patches to db46
>> ---> Configuring db46
>> Error: Target org.macports.configure returned: configure failure:
>> shell command " cd "/opt/local/var/macports/build/
>> _opt_local_var_macports_sources_rsync
>> .macports.org_release_ports_databases_db46/work/db-4.6.21/
>> build_unix" && ../dist/configure --prefix=/opt/local --enable-cxx --
>> enable-java --includedir=\${prefix}/include/db46 --libdir=\$
>> {prefix}/lib/db46 --program-transform-name="s,^db,db46," --enable-
>> dump185 --disable-tcl " returned error 1
>> Command output: configure: creating ./config.status
>> dyld: Library not loaded: /opt/local/lib/libiconv.2.dylib
>> Referenced from: /opt/local/bin/grep
>
> You have the grep port installed. db46 (and a whole lot of other
> software) uses grep at some point during configuration and doesn't
> care what version of grep is used, therefore there is no dependency
> on the grep port. To be most correct, the port should list
> "bin:grep:grep" as a build dependency, but probably half our tree
> has that issue, and grep isn't the only culprit: gawk and gsed are
> common offenders too.
>
> grep needs libiconv, and your libiconv has already been rebuilt as
> 64-bit but your grep is still 32-bit. Therefore your grep cannot use
> it, and tries to use the system's libiconv in /usr/lib. But the
> system's libiconv is too old, hence the error:
>
>> Reason: Incompatible library version: grep requires version 8.0.0
>> or later, but libiconv.2.dylib provides version 7.0.0
>
>
> The solution is to upgrade grep (and gawk and gsed if you have them)
> first. Then clean db46 (or whatever other port you got stuck on) and
> try again. I will add this information to the Migration wiki page.
I did try a few more upgrades for specific named ports rather than
"installed" ... but they all errored in much the same way. And so I
then started on the roll-back to 10.5.8 - TimeMachine did a good job,
although Mail insisted on rebuilding all my mailboxes (30 mins for 1
million emails).
my current "port installed" has amongst others ...
gawk @3.1.7_0 (active)
grep @2.5.4_0 (active)
gsed @4.2.1_0 (active)
But gawk and gsed only got there by being dependents of something
else. grep I think I installed. Is there any way of determining which
ports were user-installed and which were only dependent-installed?
Mark
More information about the macports-users
mailing list