2014-01-28 2 views
1

У меня есть несколько версий питона установили:Как установить пакеты для разных версий Python?

[email protected]:~/projects/cobbler# whereis python 
python: /usr/bin/python2.6-config /usr/bin/python2.7 /usr/bin/python /usr/bin/python2.6 /etc/python2.7 /etc/python /etc/python2.6 /usr/lib/python2.7 /usr/lib/python3.1 /usr/lib/python2.6 /usr/lib64/python2.7 /usr/lib64/python3.1 /usr/lib64/python2.6 /usr/local/bin/python2.7 /usr/local/bin/python /usr/local/bin/python2.7-config /usr/local/lib/python2.7 /usr/local/lib/python2.6 /usr/include/python2.7 /usr/include/python2.6 /usr/share/python /usr/share/man/man1/python.1.gz 
[email protected]:~/projects/cobbler# /usr/bin/python --version 
Python 2.6.5 
[email protected]:~/projects/cobbler# /usr/bin/python2.7 --version 
Python 2.7.4 
[email protected]:~/projects/cobbler# 

А потом, когда мне нужен пакет, pip устанавливает его в версии 2.6:

[email protected]:~/projects/cobbler# python setup.py build 
Traceback (most recent call last): 
    File "setup.py", line 2, in <module> 
    import glob, os, sys, time, yaml 
ImportError: No module named yaml 
[email protected]:~/projects/cobbler# pip install pyyaml 
Requirement already satisfied: pyyaml in /usr/local/lib/python2.6/dist-packages 
Installing collected packages: pyyaml 
Successfully installed pyyaml 

Я родом из рубинового фоне. Каков способ установки пакетов python для конкретной версии python?

И использовать virtualenv, похоже, не работает для установки пакета?

(virt_env_2.7.5)[email protected]:~/virt_env_2.7.5# python /root/projects/cobbler/setup.py build 
running build 
running build_py 
building koan man page. 
sh: cannot create ./docs/koan.1.gz: Directory nonexistent 
Can't open ./docs/koan.pod: No such file or directory at /usr/bin/pod2man line 59 
Creation of koan manpage failed. 
+1

** пожалуйста ** не делайте все ваши работы как корень! Представьте, что «rm -rf/usr/local/lib/notneededanymore» используется как 'rm -rf/usr/local/lib/notneededanymore'. Вы просто полностью завладели своей системой. – MattDMo

+0

@MattDMo, спасибо за совет. Я только недавно переключился с sudoing на все, чтобы на самом деле использовать root. Представьте себе туманность 'sudo rm -rf/something-rather', что лучше? Тем не менее, ваши советы отлично подходят, и большинство людей не должны использовать учетную запись root. –

ответ

0

Каждая установка python должна иметь свою собственную установку pip. Затем вы, , можете установить пакеты для определенной версии python, позвонив по телефону pip.

Возможно, у вас уже установлена ​​pip для каждой версии python. Для Например, смотрите в bin директории вашего virtualenv (в один и тот же тот, который содержит в activate скрипт.)

Если нет, here are instructions о том, как установить pip. Обязательно укажите полный путь к исполняемому файлу python при запуске /path/to/python get-pip.py. Установка python с исполняемым файлом, который вы указали, - это установка, которую влияет на установку pip при установке пакетов.

+0

Это то, что мне нужно, спасибо. –

Смежные вопросы