port won't upgrade

Ryan Schmidt ryandesign at macports.org
Tue Aug 13 14:01:53 PDT 2013


On Aug 13, 2013, at 15:56, Terry Barnum wrote:

> On Aug 13, 2013, at 1:16 PM, Ryan Schmidt wrote:
> 
>> On Aug 13, 2013, at 15:00, Terry Barnum wrote:
>> 
>>> I think I may have screwed something up when activating and deactivating two variants of a port. On a test machine, after running sudo port -v selfupdate, I installed a second instance of a port with a debug variant (dspam +mysql5 +debug) and it properly installed it at the latest version at 3.10.2_2.
>>> 
>>> When I deactivate this and then activate the non-debug dspam +mysql5 (which is still at 3.10.2_1) and run port outdated, it correctly shows it as needing an update but when I run sudo port upgrade dspam it immediately displays:
>>> 
>>> ---> Scanning binaries for linking errors: 100.00%
>>> ---> No broken files found.
>>> 
>>> but doesn't actually upgrade it.
>>> 
>>> I've looked through the FAQ and the docs but couldn't find this problem. I tried sudo port clean dspam and then sudo port upgrade outdated, sudo port -f upgrade outdated, also sudo port upgrade --enforce-variants dspam +mysql5 but no joy.
>>> 
>>> What else can I try?
>> 
>> Can you show us the output of:
>> 
>> port -v installed dspam
>> port -v outdated dspam
> 
> mac:~ auser$ port -v installed dspam
> The following ports are currently installed:
>  dspam @3.10.2_1+mysql5 (active) platform='darwin 11' archs='x86_64'
>  dspam @3.10.2_2+debug+mysql5 platform='darwin 11' archs='x86_64'
> 
> mac:~ auser $ port -v outdated dspam
> The following installed ports are outdated:
> dspam                          3.10.2_1 < 3.10.2_2   

Ok, that's what I thought.

You've run into a peculiar feature of MacPorts. You have 3.10.2_1 installed, MacPorts knows there's a newer version 3.10.2_2 available so it shows it to you in "port outdated", but MacPorts thinks there's nothing to upgrade because you've already installed 3.10.2_2, even though it's disabled and using a different variant.

If you want to install 3.10.2_2 with the mysql5 variant and without the debug variant, use:

sudo port install dspam +mysql5

Subsequent upgrades should not require that workaround.



More information about the macports-users mailing list