Trouble updating my ports, how to fix this?

Ryan Schmidt ryandesign at
Mon Sep 26 11:37:16 PDT 2011

On Sep 26, 2011, at 11:40, Peer Stritzinger wrote:

> after a pause I wanted to update my outdated ports, so I tried the usual steps:
> I did a port selfupdate:
>     MacPorts base version 1.9.2 installed,
>     MacPorts base version 2.0.3 downloaded.
>     --->  MacPorts base is outdated, installing new version 2.0.3
> and the tried a port upgrade which came to a stop with the following error message:
> --->  Building perl5
> --->  Staging perl5 into destroot
> --->  Installing perl5 @5.12.3_1+perl5_12
> --->  Activating perl5 @5.12.3_1+perl5_12
> Error: Target org.macports.activate returned: Image error: /opt/local/bin/a2p is being used by the active perl5.8 port.  Please deactivate this port first, or use 'port -f activate perl5' to force the activation.
> Log for perl5 is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_perl5/perl5/main.log
> Error: Problem while installing perl5
> To report a bug, see <>
> I tried the deactivation suggestion of the error message first:
> yrael:~ peer$ sudo port deactivate perl5.8
> --->  Deactivating perl5.8 @5.8.8_3+darwin_8+darwin_9
> --->  Unable to deactivate perl5.8 @5.8.8_3+darwin_8+darwin_9, the following ports depend on it:
> --->  	autoconf @2.62_0
> --->  	automake @1.10.1_0
> --->  	help2man @1.36.4_1
> --->  	intltool @0.40.5_0
> --->  	p5-locale-gettext @1.05_0
> --->  	p5-xml-parser @2.36_0
> Error: port deactivate failed: Please uninstall the ports that depend on perl5.8 first.

The correct solution was to upgrade perl5.8 first.

sudo port upgrade perl5.8

Then the perl5.12 upgrade would have succeeded.

> Since this didn't seem to help I tried the "-f activate" path:
> yrael:~ peer$ sudo port -f activate perl5
> --->  Computing dependencies for perl5
> --->  Activating perl5 @5.12.3_1+perl5_12
> ... a bunch of warnings about existing files followed.

Now that you've forced the activation, some things may be out of place. I'd do the following to ensure it's fixed:

sudo port -f deactivate perl5.12 perl5.8
sudo port upgrade perl5.12 perl5.8
sudo port activate perl5.12 @5.12.3_2+universal perl5.8 @5.8.9_5

> Trying to continue with the upgrade resulted in the next error message:
> --->  Activating gettext @
> --->  Cleaning gettext
> --->  Computing dependencies for help2man
> Error: Dependency 'p5.12-locale-gettext' not found.
> Error: Unable to upgrade port: 1
> To report a bug, see <>
> I found a ticket that mentions this error message but there was no solution how to fix this in a installation.

Your first selfupdate updated the version of MacPorts base. You must now run selfupdate a second time so that your ports get indexed properly. Your previous version of MacPorts did not include instructions to do that, but the current version does.

More information about the macports-users mailing list