Моя основная системная версия python - 2.7.3. Я пытаюсь создать virtualenv
, который использует версию 3.3.0. Я установил pythonbrew, virtualenv и virtualenvwrapper.Управление версией python в разных virtualenv с помощью pythonbrew
Я после этого учебника: http://technomilk.wordpress.com/2011/07/27/setting-up-our-django-site-environment-with-pythonbrew-and-virtualenv/
, который по существу проходит pythonbrew use 3.3.0
, а затем создать virtualenv. В учебнике говорится, что virtualenv будет использовать версию pythonbrew. Но это не так. Virtualenv использует 2.7.3, когда я его запускаю. Когда я делаю pythonbrew use 3.3.0
, он выходит из virtualenv, и он применяется к системе вместо среды.
Видимо, pythonbrew имеет свою собственную virtualenv оболочку, которая имеет учебник по адресу: http://suvashthapaliya.com/blog/2012/01/sandboxed-python-virtual-environments/
Я ненавижу делать это так же. Можно ли использовать virtualenvwrapper вместе с pythonbrew (а не венской упаковкой pythonbrew), чтобы иметь возможность выбирать, какую версию python использовать для каждого venv, и сохранять их отдельно от системной версии python?
Кроме того, я не хочу использовать флаг mkvirtualenv -p
, так как это означает, что мне нужно вручную установить python3.3. Я бы предпочел использовать диспетчер пакетов для управления версиями python. Трудно поверить, что ничто в питоне не соответствует RVM в рубине ... Если я не ошибаюсь?
Если вы прочитали весь мой вопрос, я использовал pythonbrew. Единственное различие заключается в том, что я использовал команду 'use' для переключения на версию python вместо команды' switch' для создания 'venv'. Когда я использовал команду 'use' и создал« venv »,« venv »имел бы более старую версию, а не ту, которую я использовал в команде' use'. Является ли проблема связана со мной с использованием команды 'use' в отличие от' switch', как вы ее написали выше? – darksky
На самом деле я думал, что проблема связана с попыткой использовать virtualenvwrapper, поэтому я предоставил свой псевдоним для workon, который работает в этом случае. Как только venv будет создан, вы сможете переключиться на что-то еще, и когда вы активируете venv, вы получите нужную версию в этой среде. Возможно, использование pythonbrew для текущей команды аналогично 'LD_LIBRARY = foo runomething', а switch больше похож на' export LI_LIBRARY = foo'. Но как только вы создадите virtualenv, я бы предположил, что он активируется и запускается с правильным python. – boatcoder
Когда я использовал вашу инструкцию: pythonbrew venv create proj | Он создал новый питон (2.7.6) в этом дереве папок: user/.pythonbrew/venvs/Python-2.7.6/proj ... Как теперь установить вещи в этой виртуальной среде? Должен ли я работать с Python-2.7.6, которая находится внутри вендоров? Обычно с pythonbrew я работал бы из любой папки, но для этого вам кажется, что вам нужно работать в этой конкретной папке и делать здесь дополнительные инструменты/библиотеки. Ваши отзывы будут высоко оценены. – Joe