Найти - Пользователи
Полная версия: Проблемы с easy_install и pip на MAC OS.
Начало » Python для новичков » Проблемы с easy_install и pip на MAC OS.
1 2 3
skavans
Всем доброго времени.

Прошу помощи по установке и настройке питона в Mac OS X (10.7.5).
Я не особо знаком с мак-осями, равно как и с питоном и вроде я что-то поломал…
Не буду углубляться, но суть в том, что я снес предустановленный питон 2.7 и решил поставить 3.3 версию.

Устанавливаю питон из пакета по вот этому мануалу http://paciflc.ru/installing_updating_python_on_macos/
Все встает и даже интерпретирует мой код, вроде все хорошо. Но не совсем Мне также необходимо поставить библиотеку requests. Путем гугления понял, что это можно сделать либо через easy_install, либо через pip. Наверное, можно поставить и вручную, но сейчас про это не буду говорить, мне хотелось бы настроить утилиты для автоматической легкой установки модулей и библиотек.

На данный момент обе этих утилиты недоступны.

admin$ easy_install
python version 3.3.0 can't run /usr/bin/easy_install. Try the alternative(s):

/usr/bin/easy_install-2.5 (uses python 2.5)
/usr/bin/easy_install-2.6 (uses python 2.6)
/usr/bin/easy_install-2.7 (uses python 2.7)

Run “man python” for more information about multiple version support in
Mac OS X.
admin$ pip
-bash: pip: command not found
C easy_install вообще непонятно, что делать. А пип пробовал устанавливать. Делаю по мануалу с сайта http://www.pip-installer.org/en/latest/installing.html
  1. curl http://python-distribute.org/distribute_setup.py | python
    curl -O https://raw.github.com/pypa/virtuale…/virtualenv.py
    python virtualenv.py my_new_env

На последнем шаге вылезает вот такая весчь
admin$ python virtualenv.py my_new_env
New python executable in my_new_env/bin/python
Traceback (most recent call last):
File “virtualenv.py”, line 430, in copyfile
os.symlink(srcpath, dest)
FileExistsError: File exists: ‘my_new_env/.Python’

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File “virtualenv.py”, line 2471, in <module>
main()
File “virtualenv.py”, line 942, in main
never_download=options.never_download)
File “virtualenv.py”, line 1043, in create_environment
site_packages=site_packages, clear=clear))
File “virtualenv.py”, line 1378, in install_python
virtual_lib)
File “virtualenv.py”, line 433, in copyfile
copyfileordir(src, dest)
File “virtualenv.py”, line 410, in copyfileordir
shutil.copy2(src, dest)
File “/System/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/shutil.py”, line 237, in copy2
copyfile(src, dst, follow_symlinks=follow_symlinks)
File “/System/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/shutil.py”, line 110, in copyfile
with open(dst, ‘wb’) as fdst:
FileNotFoundError: No such file or directory: ‘my_new_env/.Python’
Я не особо знаком с никсами, поэтому самому разобраться очень трудно.
Если кто-то может указать на ошибки, буду очень признателен. Заранее спасибо.

PS: по другим мануалам тоже ставил pip, в результате что-то получалось, что-то не очень, но так и осталось pip: command not found
sank
а попробуйте вместо “python virtualenv.py my_new_env” написать “python virtualenv.py my_new_env2”

Такое ищущение, что окружение my_new_env уже есть и оно не создаётся.
Либо удалите окружение my_new_env, если там нет ничего важного и попробуйте ещё раз.

Если поможет, то подключаете my_new_env2 и там все пипы и изиинсталы должны нормально работать

Только если хотите окружение питона3 подключить, то надо вызывать так: python3 virtualenv.py my_new_env

А вообще на маке периодически отваливается пип с изиинсталом. Я не помню как их чинить, но если ошибки здесь опубликуете, которые эти “пипы” генерят, то я быстро вспомню.
skavans
вот что получилось:
admin$ python virtualenv.py my_new_env2
New python executable in my_new_env2/bin/python
ERROR: The executable my_new_env2/bin/python is not functioning
ERROR: It thinks sys.prefix is ‘/System/Library/Frameworks/Python.framework/Versions/3.3’ (should be ‘/Users/admin/my_new_env2’)
ERROR: virtualenv is not compatible with this system or executable

по-моему раньше была именно такая ошибка, а про существования окружения это уже потом стало писать.
ZZZ

А как ты снёс системный 2.7? Если реально снёс, то перетавляй стстему, так как многое будет крашиться.

Макоси можно поставить скачанный с python.org питон необходимой версии и удобно заюзать virtualenvwrapper. Там всё просто.

Как второй вариант, поставить pythonbrew, но я на макоси пока его не юзал.

Все остальные решения вроде "sudo easy_install" по своей сути плохи и не безопасны.

skavans
удалил папку /system/library/frameworks/python.framework , где лежали версии и все остальное.
наверное зря, тоже уже подумываю о переустановке системы.

а что плохого в sudo easy_install? у меня сейчас ругается, что мол питон 3.3 не может выполнять easy_install.
sank
Так, стоп, а питон вообще работает?
Если, да, то ставим виртуаленв под рутом, а уже потом создаём окружения.
И всё должно работать без проблем.
Вы как делаете?
skavans
питон вообще работает. я снес 2.7, потом поставил 3.3, код интерпретируется.
ставить виртуаленв под рутом - это что надо написать в терминале?
sank
Ну штатно - “sudo python setup.py” в виртуаенвовском пакете. Я уж не помню как там точно - почитайте ридми. Под рутом надо запускать, т.к. оно в системные папочки будет файло заливать.

Кстати можно было 2,7 не сносить. Это вы напасано. Виртуаленв изолирует окружение и можно работать в 3-ем питоне при наличии второго. И все пакеты будет в окружение ставить. После виртуаленва не нужны никакие sudo. В общем ставьте, вопросы будут - задавайте.
ZZZ

sudo easy_install поставит пакет в системное окружение. Например, так можно перетереть уже имеющийся пакет, но другой версии, очень необходимый кому-то другому. Вообще, не надо лишний раз засорять систему и вылезть за пределы твоего хоума.

sank, 2.7 в макоси нужен для системных вещей и я не уверен, что простая установка его вернёт всё на свои места. Поэтому очень рекомендую переставить, а потом начать всё с нуля.

С помощью руута надо поставить только pip и virtualenv. Всё остальное подлежит установке в соответствующие окружения. Кстати, для нормальной работы virtualenv понадобиться xcode с comand line tools.

sank
ZZZ дело говорит. Но у меня есть 5% уверенности, что и так заработает. Почему бы не воспользоваться шансом
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB