Проблемы с установкой Python со сборкой в ​​​​стиле Framework (OS X)

Пытаясь начать изучение и разработку Python, я пытался следовать Руководство по установке Python на OS X, но не нашел его особенно «дружественным для новичков». У меня есть новый MacBook (Mtn. Lion — OS X 10.8.3), который поставляется со встроенным Python 2.7.2. Но в руководстве рекомендуется установить «сборку в стиле фреймворка» через homebrew. Так:

  1. Я установил доморощенный через ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

  2. Затем он говорит вам добавить домашнее пиво в начало вашего PATH, добавив его в ваш файл ~/.bashrc. ls -a показал, что у меня нет файла ~/.bashrc в моем домашнем каталоге. После поиска в Stack Overflow, как это сделать, я запустил nano ~/.bashrc, вставил строку export PATH=/usr/local/bin:$PATH в файл и сохранил файл.

  3. Затем я запустил brew install python --framework, и установка завершилась.

  4. Затем в руководстве говорится «добавить новый каталог сценариев Python в ваш PATH», поэтому я предполагаю, что это означает, что мне также нужно добавить строку, которую он предоставляет, в мой файл ~/.bashrc. Итак, я добавил export PATH=/usr/local/share/python:$PATH в свой файл ~/.bashrc над моей предыдущей записью.

  5. Наконец, здесь я столкнулся с проблемой, говорит easy_install pip. Однако, когда я это делаю, я получаю ошибку 13.

Итак, вот с чем мне нужна помощь.

  1. Был ли я прав в своих предположениях о том, как добавить скрипты homebrew и python в мой PATH?

  2. Я сделал что-то не так или мне просто нужно использовать sudo для установки pip? (мне очень жаль, если ответ уже есть на эта страница, но даже эти ответы не имеют для меня полного смысла, и я хочу быть осторожным и не напортачить)

  3. После установки сборки Python в стиле фреймворка (которая, как мне кажется, была текущей версией 2.7.3), почему запуск python в моем терминале по-прежнему показывает версию 2.7.2?

Спасибо! Я ценю любую помощь.


person saclark    schedule 19.03.2013    source источник


Ответы (2)


Я пытался следовать Руководству по Python для установки Python на OS X, но не нашел его особенно «дружественным для новичков».

Да, я думаю, что это вводит в заблуждение / устарело.

Затем он говорит вам добавить доморощенное пиво в начало вашего PATH, добавив его в ваш файл ~/.bashrc. ls -a показал, что в моем домашнем каталоге нет файла ~/.bashrc. После поиска в Stack Overflow о том, как это сделать, я запустил nano ~/.bashrc, вставил строку export PATH=/usr/local/bin:$PATH в файл и сохранил файл.

На Mac просто используйте ~/.profile

Затем я запустил brew install python --framework, и установка завершилась.

Я думаю, что вам не нужна опция --framework, если только вы не хотите заменить установку Mac OS по умолчанию и вам не нужен макет каталога в стиле Mac OS Framework. Тем не менее, нет необходимости заменять его, установка homebrew в любом случае будет иметь приоритет.

Затем в руководстве говорится «добавить новый каталог сценариев Python в ваш PATH», поэтому я предполагаю, что это означает, что мне также нужно добавить строку, которую он предоставляет, в мой файл ~/.bashrc. Итак, я добавил export PATH=/usr/local/share/python:$PATH в свой файл ~/.bashrc над моей предыдущей записью.

Опять же, сделайте это в ~/.profile. И не забудьте сделать

source ~/.profile

в противном случае изменения станут активными только в любом новом окне терминала, а не в том, которое вы используете в данный момент.

Наконец, здесь я столкнулся с проблемой, говорит easy_install pip. Однако, когда я это делаю, я получаю ошибку 13.

Ошибка показывает, что вы пытаетесь установить библиотеку Python по умолчанию для вашей системы Mac OS (а не в /usr/local, в стиле homebrew), для чего потребуются привилегии root. Просто не надо. Кроме того, с доморощенным питоном уже установлен pip.

Проверьте свой путь:

$ which pip
/usr/local/bin/pip
$ ls -l /usr/local/bin/pip
[..] /usr/local/bin/pip -> ../Cellar/python/2.7.3/bin/pip

Дополнительный бонус: тогда сделайте

pip install virtualenv

и использовать это.

И на ваши вопросы:

Был ли я прав в своих предположениях о том, как добавить скрипты homebrew и python в мой PATH?

Да, но используйте .profile и затем выполните source .profile.

Я сделал что-то не так или мне просто нужно использовать sudo для установки pip? (Мне очень жаль, если ответ уже есть на этой странице, но даже эти ответы не имеют для меня полного смысла, и я хочу быть осторожным и ничего не испортить)

Вам не нужен sudo с доморощенным, а pip устанавливается автоматически с доморощенным python.

После установки сборки python в стиле фреймворка (которая, как я полагаю, была текущей версией 2.7.3), почему запуск python в моем терминале все еще показывает v2.7.2?

Возможно PATH неверный, сделайте echo $PATH и проверьте правильность. Однако это не связано с тем, является ли он «фреймворковым» или нет.

person lutzh    schedule 19.03.2013
comment
Спасибо! Я снова запустил python, и в конце концов вышла версия 2.7.3. Возможно, мне просто нужно было перезапустить терминал? Я сделал то, что вы предложили, и, похоже, я готов идти. - person saclark; 20.03.2013
comment
Однако теперь кажется, что у меня есть другая проблема :(. Я сделал это отдельным вопросом, если вы хотите взглянуть: stackoverflow.com/questions/15513840/ - person saclark; 20.03.2013
comment
ошибка 13 связана с тем, что для easy_install из OS X требуется sudo. Но не делайте этого, потому что он будет установлен в /Library/Python/2.7, а затем будет конфликтовать с brewed python, потому что все python настроены на поиск модулей в /Library/Python/x.y/site-packages. Homebrew устанавливает pip и распределяет, поэтому они вам не нужны. Руководство по Python должно быть обновлено. - person Samuel John; 22.03.2013

Если вы установили python с помощью homebrew, у вас уже должен быть установлен pip. Попробуйте запустить

pip --version

чтобы узнать, установлен ли pip и где. Надеюсь, он находится на пути /usr/local/..., где живут другие ваши доморощенные штуки.

Кроме того, прежде чем устанавливать слишком многое с помощью homebrew, обязательно выполните следующие команды:

brew update
brew doctor

Удачи!

person askewchan    schedule 19.03.2013