J'ai installé le dernier Ubuntu Gnome aujourd'hui et j'étais en train de configurer ma machine pour les travaux liés à la science des données. Lorsque j'ai essayé d'installer tensorflow-gpu, j'ai rencontré un crash de pip3:
me@pc:~/Desktop$ pip3
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/pip/_vendor/__init__.py", line 33, in vendored
__import__(vendored_name, globals(), locals(), level=0)
ImportError: No module named 'pip._vendor.pkg_resources'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/pip3", line 9, in <module>
from pip import main
File "/usr/lib/python3/dist-packages/pip/__init__.py", line 13, in <module>
from pip.exceptions import InstallationError, CommandError, PipError
File "/usr/lib/python3/dist-packages/pip/exceptions.py", line 6, in <module>
from pip._vendor.six import iteritems
File "/usr/lib/python3/dist-packages/pip/_vendor/__init__.py", line 75, in <module>
vendored("pkg_resources")
File "/usr/lib/python3/dist-packages/pip/_vendor/__init__.py", line 36, in vendored
__import__(modulename, globals(), locals(), level=0)
File "<frozen importlib._bootstrap>", line 969, in _find_and_load
File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 664, in _load_unlocked
File "<frozen importlib._bootstrap>", line 634, in _load_backward_compatible
File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 2927, in <module>
File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 2913, in _call_aside
File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 2952, in _initialize_master_working_set
File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 956, in subscribe
File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 2952, in <lambda>
File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 2515, in activate
File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 2097, in declare_namespace
File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 2047, in _handle_ns
File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 2066, in _rebuild_mod_path
AttributeError: '_NamespacePath' object has no attribute 'sort'
J'ai essayé de purger python3-pip et de le réinstaller, cela ne fonctionne toujours pas. Je reçois ce qui précède simplement en exécutant pip3
dans le terminal et en appuyant sur ENTRÉE.
Des idées?
EDIT: De plus, les deux chemins sont différents pour pip et pip3:
me@pc:~$ which pip
/home/me/.local/bin/pip
me@pc:~$ which pip3
/usr/bin/pip3
J'ai corrigé cela en créant un nouvel environnement virtuel
Un nouvel environnement virtuel peut être créé par:
python3 -m venv /tmp/newvenv
Ensuite, j'ai vérifié si pip fonctionnait correctement dans le nouvel environnement virtuel:
cd /tmp/newvenv/bin
./pip3
Cela m'a donné le message normal comme suit:
Usage:
pip [options]
Commandes:
installer Installer les packages.
download Télécharger les packages.
...
Cependant, pip3 a toujours échoué.
pip3
Cela m'a quand même donné le message d'erreur.
Ensuite, j'ai décidé de copier les versions de travail de pip dans le répertoire personnel. Pour les deux étapes ci-dessous (n ° 3 et n ° 4), vous souhaiterez peut-être conserver des copies de sauvegarde.
J'ai écrasé pip et pip-9.0.1.dist-info de l'environnement virtuel vers le répertoire de base:
cp -r /tmp/newvenv/lib/python3.5/site-packages/pip ~/.local/lib/python3.5/site-packages/
cp -r /tmp/newvenv/lib/python3.5/site-packages/pip-9.0.1.dist-info ~/.local/lib/python3.5/site-packages/
J'ai également copié les deux fichiers suivants:
cp /tmp/newvenv/lib/python3.5/site-packages/pkg_resources/__init__.py ~/.local/lib/python3.5/site-packages/pkg_resources/
cp /tmp/newvenv/lib/python3.5/site-packages/pkg_resources/py31compat.py ~/.local/lib/python3.5/site-packages/pkg_resources/
Après ces étapes, pip3 fonctionne bien dans mon cas.