Установите модуль Python на версию Python не по умолчанию для Mac

У меня есть несколько разных версий Python, установленных на моем Mac. Версия по умолчанию - 2.5, поэтому, когда я устанавливаю модуль, он устанавливается на 2.5. Мне нужно иметь возможность установить некоторые модули на другую версию Python, потому что я работаю над проектами, которые используют разные версии. Кто-нибудь знает, как это сделать? Спасибо за вашу помощь.

3 ответа

Решение

Если вы устанавливаете с помощью setup.py, просто запустите его через соответствующую версию Python, например:

python2.6 setup.py install

Если вы используете easy_install, должна быть версия для соответствующей версии Python, называемая easy_install-NN, например

easy_install-2.6 some_module

Если вы работаете над разными проектами, для которых требуются разные версии Python, рассмотрите возможность использования virtualenvvirtualenvwrapper) - он позволяет запускать и использовать несколько сред, каждая со своей версией Python и набором библиотек. Пример использования будет что-то вроде:

$ python -V
Python 2.5.4
$ mkvirtualenv --python=python2.6 foo
foo $ python -V
Python 2.6.1
foo $ pip install some_mod # installs module in foo's library, rather
                           # than site wide
foo $ deactivate # leave the virtual env
$ python -m some_mod
/path/to/python: No module named some_mod

Чтобы вернуться к среде foo позже, используйте workon:

$ workon foo
foo $ python -m some_mod # no error, apns available within the env
foo $ 

Таким образом, вы можете использовать virtualenv для поддержки отдельных сред для каждой установленной вами версии Python. В этих средах pip и easy_install просто делают правильные вещи.

Если вы устанавливаете через setuptools (т.е. python setup.py), он будет установлен в каталог lib для исполняемого файла Python, который вы используете (если это не поврежденный пакет).

Если вы установили их с помощью macports, вы запускаете (от имени root):

port select --set python <python_version>

Подсказка: для просмотра списка доступных версий выполните:

port select --list python

В противном случае вы можете установить $PYTHON_PATH переменная окружения и добавьте желаемый путь к вашему Python $PATH переменная окружения, а также.

Вам также нужно будет обновить python.current (или что-то с похожим названием) символическая ссылка в /Library/Frameworks/Python.framework,


Я настоятельно рекомендую установить все версии, используя менеджер пакетов ( homebrew, macports, fink и т. Д.), Чтобы ими было легче управлять.

Другие вопросы по тегам