conflicting variants while rebuilding a dependency

Ryan Schmidt ryandesign at macports.org
Sun Jan 13 23:03:40 UTC 2019


Remember to use our list addresses at lists.macports.org, not any other hostname that we may have used in the past.


On Jan 13, 2019, at 16:54, Riccardo Mottola wrote:

> gexiv2 is a dependency for me, I never installed it directly.
> 
>> gexiv2 still has both variants enabled by default. In some ports this
>> is allowed, but in many it is not, if nothing else because one cannot
>> run a single configure step that would enable two python versions.
>> I didn't test, but I assume that you might be able to do
>>    sudo port install gexiv2
> 
> I suppose it would work, since:
> 
> sudo port install gexiv2
> Password:
> --->  Computing dependencies for gexiv2
> The following dependencies will be installed:
> boost
> ctags
> gtk-doc
> py36-anytree
> py36-lxml
> py36-pygments
> py36-setuptools
> py36-six
> pygments_select
> source-highlight
> Continue? [Y/n]: n
> 
>> but not
>>    sudo port install gexiv2 +python27 +python36
>> if some of the dependencies with python variants are not yet
>> installed, or waiting for update.
> 
> If I issue that it will ineed fails.
> 
>> This might well be a bug, or rather an unfortunate coincidence with no
>> easy workaround.
>> What happens if you clean all the ports and run
>>    sudo port install gexiv2
>> manually instead of waiting for rev-upgrade?
> 
> sudo port clean all!
> that is a long command to run, even on a SSD!
> 
> I did a full clean and tried to install
> sudo port install gexiv2 +python27 +python36
> 
> again but it did not help!

If the boost port is not yet installed (as the above output suggests it is not), then that failure is expected. MacPorts passes the variant selection down to ports that are not yet installed. If you tell gexiv2 to install with variants +python27 and +python36, MacPorts will tell any ports in the recursive dependency tree of gexiv2 that are not yet installed to install with those variants as well. gexiv2 supports building with one python2x variant and one python3x variant, but boost only supports building with a single python variant regardless of version, hence the error message you received.



More information about the macports-users mailing list