2010-07-08 3 views
0

J'ai du mal à installer matplotlib sur mac os 10.6, donc j'ai utilisé macports et installé toutes les dépendances dont il avait besoin, ce qui est super, mais en plus une nouvelle version de python. Maintenant, j'ai deux versions de Python et cela me dérange. Le matplotlib fonctionne bien sur le python macport, et le reste de mon contenu est avec le python par défaut. Quelle est la meilleure solution pour intégrer les deux dans un, et lequel utiliser comme python par défaut?python supplémentaire installé lors de l'installation de matplotlib avec macports

J'ai essayé de copier tous les paquets de mes paquetages python /defaultPython/../site par défaut dans les paquets /opt/../site. La même chose serait d'ajouter /defaultPython/../site-packages sur le PYTHONPATH de macports python. Certains ont bien fonctionné, mais pas tous.

Par exemple sur

import scipy.sparse 

J'ai eu cette erreur

import _csr 
ImportError: dlopen(/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/scipy/sparse/sparsetools/_csr.so, 2): no suitable image found. Did find: 
    /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/scipy/sparse/sparsetools/_csr.so: no matching architecture in universal wrapper 

Toute pensée ou sale solution pour cela?

Merci beaucoup!

Répondre

1

Vous ne devez jamais supprimer ou modifier le système Python fourni par Apple avec Mac OS X - c'est la version spécifique avec laquelle ils ont testé leur système d'exploitation, et vous ne voulez vraiment pas .

Si vous souhaitez utiliser des extensions manuelles installées par macports, vous avez besoin de la version macports de Python à cet effet, donc vous ne pouvez pas supprimer cela non plus.

Il n'y a pas de raison de s'inquiéter parce que vous avez plus d'une version Python sur votre système (j'ai généralement au moins une demi-douzaine sur le mien ;-).

Il suffit de mettre /opt/... (où macports conserve son répertoire bin) au début de votre variable d'environnement PATH (par exemple dans .bashrc) et assurez-vous d'installer les macports Python toute extension que vous avez besoin là-bas.

+0

Merci pour la réponse rapide. /opt/... est déjà ajouté sur mon PATH. Je voudrais pouvoir appeler un script, disons python test.py, qui importe les paquets des deux. Mon matplotlib est installé avec les macports, et le reste de mes paquets sont installés avec ma version par défaut. Des idees pour faire cela? – Oliver

+0

@Oliver, ce que vous voulez faire est impossible: il vous suffit d'installer tous les paquets directement ou indirectement utilisés dans un script donné sur la version _same_ de Python, puis d'utiliser cette version pour exécuter le script. –

+0

Merci Alex. J'ai édité la question. Peut-être que vous connaissez une solution pour cela? – Oliver

Questions connexes