Проблема с virtualenv в Mac OS X - PullRequest
41 голосов
/ 06 мая 2011

Я установил virtualenv через pip и получаю эту ошибку после создания новой среды:

selenium:~ auser$ virtualenv new  
New python executable in new/bin/python  
ERROR: The executable new/bin/python is not functioning  
ERROR: It thinks sys.prefix is u'/System/Library/Frameworks/Python.framework/    Versions/2.6' (should be '/Users/user/new')  
ERROR: virtualenv is not compatible with this system or executable  

В моей среде:

PYTHONPATH=/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages  
PATH=/System/Library/Frameworks/Python.framework/Versions/2.6/bin:/Library/Frameworks/Python.framework/Versions/2.6/bin:/Library/Frameworks/Python.framework/Versions/2.6/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin  

Как я могу восстановитьэто?

Спасибо.

Ответы [ 14 ]

0 голосов
/ 19 мая 2017

Откройте терминал и введите /Library/Frameworks/Python.framework/Versions/

, затем введите ls /Library/Frameworks/Python.framework/Versions/2.7/bin/ , если вы используете Python2 (или любой другой).

Отредактируйте ~ / .bash_profile и добавьте следующую строку: export PATH=$PATH:/Library/Frameworks/Python.framework/Versions/2.7/bin/

cat ~/.bash_profile

В моем случае содержание ~ / .bash_profile выглядит следующим образом:

export PATH=$PATH:/Library/Frameworks/Python.framework/Versions/2.7/bin/

Теперь virtualenv команда должна работать.

0 голосов
/ 10 февраля 2017

Я сделал следующие шаги, чтобы заставить virtualenv работать:

Обновите virtualenv следующим образом:

==> sudo pip install --upgrade virtualenv

Инициализировать python3 virtualenv:

==> virtualenv -p python3 venv
0 голосов
/ 10 июля 2014

На OSX 10.6.8 leopard, после "апгрейда" до Lion, а затем повторного понижения (ой - ИЗБЕГАЙТЕ!), Я несколько месяцев назад прошел метод Wolf Paulus , совершенно не зная Python. Всего удалил python 2.7 и "заменил" его на 3.something. Моя программа FTP перестала работать (Fetch), и кто знает, что еще зависит от Python 2.7. Поэтому в этот момент я скачал последнюю версию 2.7 с python.org, и ее установщик заставил меня работать - пока я не попытался использовать virtualenv.

На этот раз мне показалось, что Python 2.7 полностью удалил этот код:

sudo rm -R /System/Library/Frameworks/Python.framework/Versions/2.7

удаление всех ссылок с этим кодом:

sudo rm /usr/bin/pydoc
sudo rm /usr/bin/python
sudo rm /usr/bin/pythonw
sudo rm /usr/bin/python-config

Я пытался установить python с homebrew, но, очевидно, он не будет работать, если не будет установлен весь XTools, чего я избегал, поскольку версия XTools, совместимая с 10.6, является древней и 4 ГБ, и в основном все Мне нужен GCC, компилятор, который вы можете получить здесь .

Итак, я только что установил последнюю версию python.org .

Затем пришлось переустановить easy_install, pip, virtualenv.

Определенно интересно, когда настанет время для нового ноутбука, но многое можно сказать о покупке меньшего количества единиц оборудования (рабский труд, неэтичный майнинг и т. Д.).

0 голосов
/ 06 мая 2011

Если у вас по-прежнему возникают проблемы с virtualenv, вы можете вместо этого попробовать pythonbrew . Это альтернативное решение той же проблемы. Он работает больше как Ruby rvm : он создает и создает целый экземпляр Python в $HOME/.pythonbrew, а затем настраивает некоторые функции bash, которые позволяют легко переключаться между версиями. Где virtualenv скрывает системную версию Python, используя символические ссылки как часть своего решения, pythonbrew создает полностью автономные установки Python.

Я использовал virtualenv годами. Это неплохое решение, но я недавно переключился на pythonbrew. Наличие полностью автономных экземпляров Python означает, что установка нового занимает некоторое время (поскольку pythonbrew фактически компилирует Python с нуля), но автономный характер каждой установки мне нравится. И диск дешевый.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...