9
votes

Localiser le paquet MacPorts?

Je viens d'installer le paquet PY27-NUMPY via MacPorts et Python ne trouvera pas le module lorsque j'utilise cette commande: Importation SCIPY

J'ai utilisé l'aide ('modules') la commande et le port scipy ne sont pas venus.

Clairement, le chemin n'est pas configuré correctement ou Macports ne s'installe pas dans le bon endroit, mais de toute façon, cela résoudrait mon problème de savoir où ce paquet est installé.

Où puis-je trouver le chemin du package installé Macports, PY27-Scipy?

sortie de echo $ path commande:

/library/frameworks/python.framework/versions/2.7/bin:/opt/local/bin:/opt/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr / local / bin: / usr / x11 / bin: répertoire / bac

Je ne trouve pas l'emballage dans aucun de ces endroits.

Merci pour l'aide.


2 commentaires

La variable d'environnement est simplement pour votre shell (probablement bash (1) ) pour rechercher des programmes à exécuter sans nom de chemin qualifié: chat plutôt que / bin / cat , ftp plutôt que / usr / bin / ftp , etc. (il est également utilisé par le EXECLLP (3) et exécutant (3) fonctionne, mais cette utilisation est moins fréquente que la coque.) Il n'a rien à voir avec le chemin de recherche de module Python, pythonpath . Voir Python (1) Pour plus d'informations sur PythonPath et BASH (1) Pour plus d'informations sur des informations sur .


Quelle question boiteuse pour débordement de pile ...


6 Réponses :


3
votes

MacPorts doit installer python packages dans /opt/local/library/frameworks/python.framework/2.7/site-packages Par défaut . Alors assurez-vous de définir $ pythonpath de la variable d'environnement dans votre .profile fichier: xxx


8 commentaires

Ce n'est pas là que MacPorts installe des choses.


@Ned quel deily il le fait dans ma machine :)


Je ne me souviens pas si j'ai changé de configuration d'installation Macports , mais ce ne sera pas un problème car l'OP peut trouver l'emplacement à l'aide de contenu (Jeremy W. Sherman Response) .


Ensuite, vous avez modifié ses valeurs par défaut ou vous définissez une variable de configuration via une variable d'environnement ou quelque chose comme .pydistutils.cfg. Les Pythons MacPorts sont des bâtiments-cadre et le répertoire des packages de site par défaut est dans /opt/local/library/frameworks/python.framework /...< / code>


Mais la question est sans aucun doute que l'OP utilise le mauvais python. Le paquet MacPorts Py27-Scipy provoque l'installation de Macports d'installer son propre python et qui n'est pas situé dans / Bibliothèque / Cadres /.


Comment pouvons-nous corriger les Macports à ne pas aspirer et installer des packages dans votre écran, vous savez, le répertoire panoramique fourni avec l'ordinateur et est désigné pour de telles choses (/Library/python/2.7/Site-Packages)?


@Artofwarfare MacPorts Cela pourra prévenir les conflits. Il n'y a rien de mal avec ça imo.


@fardjad - Cacher le fichier peut empêcher les conflits, mais il inhibe également de manière significative la capacité de tout travailler ensemble (sans parler de générer une énorme quantité de frustration et de confusion dans le processus.) J'ai décidé de désinstaller MacPorts (à nouveau) - Il ne vaut rien d'en valeur pour que cela joue bien avec quoi que ce soit. Il insiste toujours pour cacher tous ses fichiers dans les répertoires les plus retardés où rien d'autre ne peut les trouver (ni moi, sans un effort énorme de ma part.)



15
votes

Pour trouver l'emplacement des composants installés, utilisez le contenu sous-commande: xxx

comme pour obtenir python pour trouver le package, Voir @ Réponse de FARDJAD .


2 commentaires

Notez que tout (sauf un lien symbolique pour F2PY) dans le package PY27-NUMPY est toujours installé dans l'instance MacPorts Python2.7. Donc, quel que soit l'endroit où PY27-NUMPY est installé, la clé est de savoir comment invoquer le MacPorts Python2.7.


Votre réponse a également été très utile et je vérifierais deux si je pouvais.



13
votes

Votre chemin est incorrect. Il semble de choisir un autre python 2.7, probablement installé à l'aide d'un installateur binaire de Python.org ou ailleurs, et pas les Macports en ont installé un. Essayez de supprimer le /library/frameworks/python.framework/versions/2.7/bin code> du chemin ou simplement d'appeler le Python MacPorts directement:

/opt/local/bin/python2.7


3 commentaires

Vous pouvez également utiliser python_select pour définir le fichier python ou vous pouvez appeler cette commande: port sudo Sélectionnez -Set Python Python27 .


Le MacPorts Python_Select Définit un lien symbolique pour Python in / opt / local / bin de sorte qu'il ne vous aidera pas si /library/frameworks/python.framework/versions/versions 2.7 / bin vient d'abord sur le chemin.


AHHH OUI, NOTÉ NOTÉ NOTÉ LA SORTIE de l'OP '/ code>.



1
votes
sudo port select --set python python27
is the best answer to install port's python system-wide

1 commentaires

N'oubliez pas de sélectionner le droit pip aussi: port sudo Sélectionnez -Set Pip Pip27



0
votes

Avec homebrew uniquement à l'aide de la dernière version du système Mac, et Macports pour les autres entre les autres, j'ai été confus jusqu'à ce que j'ai trouvé Emplacements Python diffèrent en fonction du programme d'installation .

Voici un conseil d'opinion: utilisez virtualenvs pour vos projets et ne modifiez pas votre version par défaut avec les MacPorts. Je ne veux pas et je ne veux pas me souvenir de mettre à jour mon python au milieu de quelque chose, donc je compte sur Virtualenvs. Choisissez et trouvez la version Python sur l'ordinateur, puis Mkvirtualenv --Python = / Trouvé / U / Python3.x Gestawesome .


0 commentaires

0
votes

basé sur La réponse de Jeremy W. Sherman

J'ai vérifié ma version Python P> xxx pré>

et emplacement: p> xxx pré>

puis essayé: p> xxx pré>

Quelle liste 7285 Lignes: P>

echo $PYTHONPATH
/opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages


0 commentaires