5 votes

Impossible de mettre à jour matplotlib dans Ubuntu 12.04 avec Canopy installé

J'essaie de mettre à niveau matplotlib en Ubuntu 12.04 . Lorsque j'exécute la commande :

sudo pip install --upgrade matplotlib

J'obtiens cette erreur :

Downloading/unpacking matplotlib
  Running setup.py egg_info for package matplotlib
    The required version of distribute (>=0.6.28) is not available,
    and can't be installed while this script is running. Please
    install a more recent version first, using
    'easy_install -U distribute'.

    (Currently using distribute 0.6.24dev-r0 (/usr/lib/python2.7/dist-packages))
    Complete output from command python setup.py egg_info:
    The required version of distribute (>=0.6.28) is not available,

and can't be installed while this script is running. Please

install a more recent version first, using

'easy_install -U distribute'.

(Currently using distribute 0.6.24dev-r0 (/usr/lib/python2.7/dist-packages))

----------------------------------------
Command python setup.py egg_info failed with error code 2
Storing complete log in /home/gabriel/.pip/pip.log

Alors je cours :

easy_install -U distribute

et j'obtiens :

Traceback (most recent call last):
  File "/home/gabriel/Enthought/Canopy_32bit/User/bin/easy_install", line 9, in <module>
    load_entry_point('distribute', 'console_scripts', 'easy_install')()
  File "/home/gabriel/Enthought/Canopy_32bit/User/lib/python2.7/site-packages/setuptools-0.9.8-py2.7.egg/pkg_resources.py", line 378, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/home/gabriel/Enthought/Canopy_32bit/User/lib/python2.7/site-packages/setuptools-0.9.8-py2.7.egg/pkg_resources.py", line 2565, in load_entry_point
    raise ImportError("Entry point %r not found" % ((group,name),))
ImportError: Entry point ('console_scripts', 'easy_install') not found

Il y a donc quelque chose qui ne fonctionne pas avec mon Canopy installer. J'utilise Spyder pour que je puisse désinstaller Canopy pour voir si cela peut aider, mais les commandes sudo apt-get remove enthought* y sudo apt-get remove canopy* ne trouve rien à enlever.

Que puis-je faire pour mettre à jour matplotlib ?


Ajouter

J'ai suivi les instructions pour supprimer Canopy de ici et maintenant, lorsque je lance easy_install -U distribute Je reçois :

Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
ImportError: No module named site

ce qui, je crois, est lié au fait que j'ai supprimé la ligne source ~/Enthought/Canopy_64bit/User/bin/activate de ~/.profile . J'ai essayé d'exécuter les commandes suivantes en tant que sudo :

apt-get autoclean
apt-get clean
apt-get update
apt-get upgrade
apt-get dist-upgrade
apt-get -f install
dpkg --configure -a
apt-get install --reinstall python

mais cela n'a pas fonctionné. Avez-vous des idées sur la façon de résoudre ce problème ?


Ajouter 2

J'ai essayé de régler PYTHONHOME avec la commande :

export PYTHONHOME=/usr/lib/python2.7

et maintenant easy_install -U distribute les retours :

ImportError: No module named site

Même chose pour :

export PYTHONHOME=/usr/local/lib/python2.7

Je vais donc me mettre à la recherche de cette erreur.


Ajouter 3

Le cadre :

export PYTHONHOME=/usr/lib/python2.7/

puis en exécutant la commande en tant que sudo :

sudo easy_install -U distribute

a fait l'affaire. Je pouvais alors exécuter sudo pip install --upgrade matplotlib . J'ajouterai cette réponse dans une minute.

5voto

Gabriel Points 2309

Après avoir retiré Canopy Je cours :

export PYTHONHOME=/usr/lib/python2.7/
sudo easy_install -U distribute
sudo pip install --upgrade matplotlib

Je pourrais mettre à niveau matplotlib de cette manière.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X