3 votes

Comment ne pas installer la dépendance MacPorts si elle est installée ailleurs ?

Un problème courant que je rencontre avec MacPorts est que je vais installer un port, et il va lister un port comme une dépendance que j'ai installée en dehors de MacPorts.

Par exemple :

J'ai installé Qt5 en dehors de MacPorts, et je ne veux absolument pas que MacPorts installe Qt4, mais c'est une dépendance pour le port que je veux. Je veux que le port utilise les bibliothèques Qt5 que j'ai installées à un autre endroit.

De plus, j'ai installé Python 2.7.5 et Python 3 en dehors de MacPorts. Cependant, lorsque j'installe certains ports qui ont Python comme dépendance, MacPorts essaie d'installer le port python27 - Je ne veux pas que ce port soit installé. Je veux gérer les versions de Python en dehors de MacPorts.

Quelles sont mes options ?

3voto

Nip Points 362

En général, MacPorts n'utilise qu'une petite collection de bibliothèques et d'outils "système" ; il ne permet pas vraiment d'utiliser des bibliothèques, des outils, des environnements, etc. construits séparément.

Voir les entrées intitulées " Pourquoi MacPorts utilise-t-il ses propres bibliothèques ? " et " MacPorts va-t-il se lier aux bibliothèques du système plutôt qu'à ses propres bibliothèques ? " dans le FAQ MacPorts .


Il est possible d'ajuster des fichiers Portfiles individuels pour utiliser votre matériel déjà construit, mais vous travaillerez vraiment "à contre-courant" du système MacPorts ; vous rencontrerez probablement de nombreuses difficultés lorsque vous entreprendrez une telle approche.

Il peut s'avérer plus facile de construire manuellement le logiciel qui vous intéresse ; vous aurez ainsi un meilleur contrôle sur les bibliothèques qu'il utilise. S'il y a beaucoup de dépendances (non Qt, non Python), et si cela ne vous dérange pas de les construire à travers MacPorts, alors vous pouvez toujours utiliser MacPorts pour fournir d'autres dépendances :

 # make sure the list of other dependencies looks reasonable
port echo depof:someport and not python27 and not qt4-mac

# install the other dependencies
sudo port install depof:someport and not python27 and not qt4-mac

# configure; the way to specify the library locations will vary, but might be like this:
CFLAGS=-I/opt/local/include LDFLAGS=-L/opt/local/lib \
  ./configure --with-qt=/my/qt5/installation --with-python3=/my/python3/installation

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X