Как использовать пиво Python в качестве Python по умолчанию?
Я пытаюсь переключиться на Homebrew (после использования fink и macport) в Mac OS X 10.6.2. Я установил python 2.7 с
brew install python
Проблема заключается в том, что, вопреки Macport, кажется, что нет утилиты python_select, а мой по умолчанию mac python всегда по умолчанию
which python
дай мне
/usr/bin/python
и /usr/bin/python
не является символической ссылкой
Как я могу сделать, чтобы python brew был моим питоном по умолчанию?
Ответы
Ответ 1
Когда вы используете Homebrew, следующая команда дает лучшую картинку:
brew doctor
Выход:
==>/usr/bin происходит до /usr/local/bin. Это означает, что будут использоваться системные программы, а не те, которые предоставляются Homebrew. Это проблема, если вы, например. заварить установлен Python.
Попробуйте отредактировать свой.bash_profile, чтобы поставить: /usr/local/bin перед /usr/bin в вашей $ PATH.
Ответ 2
Смотрите: Как символизировать питон в Homebrew?
$ brew link --overwrite python
Linking /usr/local/Cellar/python/2.7.3... 28 symlinks created
$ which python
/usr/local/bin/python
Ответ 3
Быстрое исправление:
- Открыть
/etc/paths
- Измените порядок строк (наивысший приоритет сверху)
В моем случае /etc/paths
выглядит следующим образом:
/usr/local/bin
/usr/local/sbin
/usr/bin
/bin
/usr/sbin
/sbin
Если вы хотите узнать больше о путях в OSX, я нашел эту статью весьма полезной:
http://muttsnutts.github.com/blog/2011/09/12/manage-path-on-mac-os-x-lion/
Ответ 4
Я сделал "brew install python" для OSX High Sierra. У $PATH
был /usr/local/bin
перед любым другим путем, но все же which python
указывал на системный python.
Когда я посмотрел глубже, я обнаружил, что в /usr/local/bin
нет исполняемого файла python. Исполняемый файл называется python2
. Чтобы устранить эту проблему создать символическую ссылку python
, указывающий на python2
:
/usr/local/bin $: ln -s python2 python
Ответ 5
Как было предложено самим установщиком homebrew, обязательно добавьте это в свой .bashrc
или .zshrc
:
export PATH="/usr/local/opt/python/libexec/bin:$PATH"
Ответ 6
Homebrew НЕ заменяет материал в "/usr/bin". Вы просто хотите поставить "/usr/local/bin" перед "/usr/bin" в вашем пути, а затем "какой python" предоставит вам "/usr/local/bin/python".
Замена/usr/bin/python (или/usr/bin/ruby) крайне не рекомендуется.
Ответ 7
python
формуле python
теперь используется python3
(v3.6.5), brew свяжет каталог:
/usr/local/opt/python -> ../Cellar/python/3.6.5
он также свяжет двоичный файл:
/usr/local/bin/python3 -> ../Cellar/python/3.6.5/bin/python3
Если вам все еще нужно использовать python2.x
, используйте:
brew install [email protected]
Чтобы использовать homebrew python
, просто поместите его каталог в PATH, для bash:
export PATH="/usr/local/opt/python/libexec/bin:$PATH"
для рыбы:
set -x PATH /usr/local/opt/python/libexec/bin $PATH
Замечания:
- это будет теневой версии по умолчанию для
python
- homebrew используется для связи python с
/usr/local/share/python
в более старых версиях.
Ответ 8
Измените свой $PATH, Добавьте это в свой bashrc или bash_profile:
export PATH=/usr/local/bin:/usr/local/sbin:~/bin:$PATH
подробнее нажмите здесь:
Проблема № 89791
Ответ 9
Вам нужно отредактировать переменную окружения PATH, чтобы убедиться, что везде, где находится домашний питон, выполняется поиск до /usr/bin. Вы также можете настроить в конфигурации оболочки, чтобы переменная типа PYTHON была настроена на нужную версию python и вызывала $PYTHON
, а не python
из командной строки.
Кроме того, как заявил другой плакат (и особенно на mac), НЕ СОХРАНИТЕСЬ с питоном в /usr/bin, чтобы указать его на другую установку python. Вы просто просите о неприятностях, если вы это сделаете.
Ответ 10
Я сделал brew install python
, мой $PATH
был хорошим, но все же which python
дал мне установленную систему. Перезапуск терминала зафиксировал его.
Ответ 11
Я считаю, что есть средства, чтобы сделать homeprew python по умолчанию, но, на мой взгляд, правильный способ решить проблему - не путаться с путями системных python: лучше создать виртуальный файл, в котором исходный питон будет по умолчанию (по используя опцию virtualenv --python). Использование таких инструментов, как python_select
, почти всегда является плохой идеей.
Ответ 12
python
теперь указывает на python3
, если вам нужен python 2
тогда выполните: brew install [email protected]
а затем в файл export PATH="/usr/local/opt/[email protected]/libexec/bin:$PATH"
.zshrc или.bashrc export PATH="/usr/local/opt/[email protected]/libexec/bin:$PATH"
Теперь, pyhon --version
= Python 2.7.14 и python3 --version
= Python 3.6.4. Это поведение, которое я привык видеть в моем терминале.
Ответ 13
Просто выполните:
brew install python
brew link python
После этого добавьте это в свой bashrc или bash_profile:
alias python='/usr/local/bin/python2'
Наслаждайтесь!
Ответ 14
Вы можете редактировать /etc/paths. Вот мой:
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
Затем добавьте символическую ссылку для версии Python. В моем случае
$ cd /usr/local/bin
$ ln -s python3 python
Вуаля!
Ответ 15
Начиная с High Sierra, вам нужно использовать:
sudo chown -R $(whoami) $(brew --prefix)/*
Это потому, что /usr/local
больше не может быть разбит
Ответ 16
Добавьте /usr/local/opt/python/libexec/bin
явно к вашему .bash_profile
:
export PATH="/usr/local/opt/python/libexec/bin:$PATH"
После этого все должно работать правильно.
Ответ 17
Не знаю, что вы имеете в виду с Python по умолчанию. Я считаю неправильной практикой заменять интерпретатор системы Python другой версией. Функциональность системы может каким-то образом зависеть от системы Python и определенных модулей или конкретной версии Python. Вместо этого установите свои пользовательские установки Python в безопасном месте и при необходимости скорректируйте свой PATH, чтобы называть you Python через поиск пути, а не искать Python по умолчанию.