Когда я установил Python setuptools
я отсутствовал в --prefix
пути --prefix
я использовал на другой машине:
sh setuptools-0.6c11-py2.7.egg --prefix=/opt/python2.7.2
Теперь после этой ошибки, когда я пытаюсь установить pip
я получаю следующую ошибку:
[root@kkdev src]# easy_install pip Searching for pip Best match: pip 1.0.2 Processing pip-1.0.2-py2.7.egg pip 1.0.2 is already the active version in easy-install.pth Installing pip script to /usr/bin error: /usr/bin/pip: No such file or directory
Случается, что создается символическая ссылка, указывающая на папку, указанную в пути --prefix
:
[root@kkdev src]# ls -al /usr/bin/pip lrwxrwxrwx 1 root root 24 Nov 5 17:01 /usr/bin/pip -> /opt/python2.7.2/bin/pip
Я удалил эту ссылку, а затем повторно запустил установщик setuptools и задал правильный префикс (моя установка Python живет в /usr/lib/python2.7
):
sh setuptools-0.6c11-py2.7.egg --prefix=/usr
Затем я снова запустил easy_install pip
и похоже, что я исправил проблемы с пальцем. Однако, когда я пошел на установку virtualenv
я столкнулся с той же проблемой:
[root@kkdev src]# pip install virtualenv [uninteresting installer dialogue snipped] Installing virtualenv script to /usr/bin error: /usr/bin/virtualenv: No such file or directory
Опять же неправильный путь используется для создания символической ссылки на место, где установлен virtualenv
:
[root@kkdev src]# ls -al /usr/bin/virtualenv lrwxrwxrwx 1 root root 31 Nov 5 17:01 /usr/bin/virtualenv -> /opt/python2.7.2/bin/virtualenv
(Я запускаю Fedora 15 32bit, у которого Python 2.7.1 установлен из коробки)
Как я могу исправить это навсегда?
Мне удалось вернуться к квадрату, используя грубую силу и уничтожив все и все доказательства setuptools
, easy_install
и pip
из папки моих site-packages
.
После этого я перезапустил sh setuptools-0.6c11-py2.7.egg
без переключателя --prefix
и все так, как должно быть сейчас.
easy_install --help
упоминает, что вы также можете указать --prefix
Я думаю, что по умолчанию это будет происходить от ~/.pydistutils.py
.pydistutils.py
любом месте.