2017-01-02 21 views
0

Я изучаю возможность обновления до Python 3.6 в нашем проекте.Установить Python конкретной версии в системе с pyenv

Прямо сейчас мы используем Python 3.5.2 от ppa:fkrull/deadsnakes на Ubuntu 14.04. У PPA еще нет Python 3.6, и пока неясно, когда он будет доступен.

Я не хочу устанавливать еще один PPA.

И я пытаюсь найти более общий подход.

Я нашел людей, предлагающих использовать pyenv, который компилирует Python из источника, что звучит интересно, потому что я могу обновить Python в любое время, не дожидаясь, пока его не добавит помощник репо. Кроме того, я могу легко установить другие Python-ароматы, такие как PyPy.

Я не готов использовать pyenv в качестве виртуальной среды, да, поэтому мне интересно, можно ли использовать его для компиляции и установки Python глобально, чтобы я мог просто использовать его.

ответ

1

Документация немного сбивает с толком, потому что нет python-build двоичный код добавлен в PATH после установки.

python-build является плагином pyenv (установлен по умолчанию). Документация и дополнительная информация здесь: https://github.com/pyenv/pyenv/tree/master/plugins/python-build.

Как установить общесистемный Python для всех пользователей: 1) Войти как root и 2) установить требуемую версию Python на /usr/local/python-X.Y.Z.

sudo ~/.pyenv/plugins/python-build/bin/python-build 3.6.1 /usr/local/python-3.6.1/ 

Теперь вы можете использовать эту версию Python в качестве обычного пользователя, например, вы можете создать virtualenv для вашего проекта:

/usr/local/python-3.6.1/bin/python -m venv /var/www/my-app/.env/ 
0

https://github.com/yyuu/pyenv/wiki/Common-build-problems#installing-a-system-wide-python

Установка общесистемного Python

Если вы хотите установить интерпретатор Python, которая доступна для всех пользователей и системных скриптов (без pyenv), используйте /usr/local/ как установить пути. Например:

sudo python-build 3.3.2 /usr/local/