Solo una variante di una porta MacPorts
può essere attiva in qualsiasi momento. Tuttavia, nella terminologia MacPorts
, più varianti e/o versioni di una porta possono essere installed
contemporaneamente. Di questi, al massimo uno è active
, gli altri sono inactive
. Se è necessario alternare occasionalmente tra varianti, è possibile attivare una variante specifica secondo necessità. Ciò disattiverà automaticamente anche tutte le porte attive in conflitto. Ad esempio, ecco un ipotetico vim
esempio (non completamente testato!):
$ sudo port install vim +python26
$ sudo port clean vim
$ sudo port install vim +python31
$ sudo port echo installed |grep vim
vim @7.3.21_0+python26
vim @7.3.21_0+python31
$ sudo port activate vim @7.3.21_0+python26
# ... edit with Python 2
# ...
$ sudo port activate vim @7.3.21_0+python31
# ... edit with Python 3
# ...
fonte
2010-10-22 02:08:10
Sono confuso. Poiché una variante è un'opzione di compilazione, vim + python26 costruisce vim con il supporto a python26. Lo stai quindi ricompilando con il supporto per python31. Come mantiene entrambe le opzioni di compilazione? Si tratta di una funzionalità Mac Port? – wonbyte
Non sono un esperto di internals ma essenzialmente conserva copie di ogni porta 'installed' (guardate in'/opt/local/var/macports/software/'). Il processo di attivazione di una porta crea collegamenti fisici dai file presenti nelle posizioni normali ('/ opt/local/bin' ecc.). La disattivazione di una porta rimuove quei collegamenti fisici. Quindi il processo è veloce e non richiede copie extra di ogni file, solo le voci del collegamento duro. –
Vedo come funziona. Grazie mille per l'aiuto! – wonbyte