Я новичок в Mac, и, видимо, я сделал какую-то ошибку. Я изучаю python с помощью учебных пособий, а между Homebrew, Pip и XCode почему-то все мои версии смешаны. Pip3 указывает на python2, поэтому все мои испытания python3 терпят неудачу и т. д.
Я изучаю, как безопасно удалить все версии, а затем выполнить чистую установку (доморощенный?), но я немного нервничаю.
Я нашел несколько отличных ссылок:
Ясно, что никто ничего не трогает в корневом /system
каталоге, и в основном все остальное удаляется. Что меня нервирует, так это то, что эти ссылки устарели. (шесть лет! +) Я не уверен, действительно ли я доверяю им или нет.
Кто-нибудь был здесь в последнее время? Могу ли я доверять сообщениям, указанным выше? Как мне убрать этот беспорядок с версией Python? Примечание. Я использую MacOS Sierra (10.12.5)
Итак, в итоге я удалил все установки Python и переустановил их через Homebrew.
which python
---> /Library/Frameworks/Python.framework/Versions/2.7/bin/python
Удалите весь каталог Python.framework из /Library/Frameworks
.which python3
---> /usr/local/bin/python3
Удалите весь каталог python3.Я немного нервничал по поводу символических ссылок. Сначала я переименовал те, которые явно вызывали у меня проблемы. Оказалось, что это было ненужно. Вместо этого просто используйте:
$ brew doctor
Warning: Broken symlinks were found. Remove them with 'brew prune':
/usr/local/bin/python-32
/usr/local/bin/python2-32
/usr/local/bin/python2.7-32
/usr/local/bin/python2_DNU
/usr/local/bin/python_DNU
/usr/local/bin/pythonw-32
/usr/local/bin/pythonw2-32
/usr/local/bin/pythonw2.7-32
Итак, brew prune
(или brew cleanup --prune
в более новых версиях Homebrew) работало отлично. Он удалил все вышеперечисленные символические ссылки.
Переустановите python и python3 через доморощенный. Все сделано.
Я ни разу не коснулся установки Python, расположенной в /System
папке.
О, и чтобы было ясно. Ответ на исходный вопрос
Да, можно доверять старым ссылкам, как написано! Это руководство остается в силе.
Моя версия Python была 3.6, я хотел обновить ее до 3.7 (на случай, если у вас есть похожие требования). Я использую macOS версии 10.12.6, и у меня сработало простое удаление и повторная установка:
brew uninstall --ignore-dependencies python3
Затем:
brew install python3
и сделано:
python3
Python 3.7.2 (default, Jan 13 2019, 12:51:54)
[Clang 9.0.0 (clang-900.0.39.2)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
ipython
путь, вручную отредактировав скрипт запуска, чтобы указать на варочную версию python.Системные файлы защищены системой защиты целостности системы. Вы не сможете следовать этим инструкциям для rm -rf
случайных папок в /System без предварительного отключения SIP.
Однако, поскольку файлы защищены, вы знаете, что файлы не были изменены. Ваш «беспорядок версии» будет связан с настройкой вашей оболочки и в любом случае не будет изменен путем изменения системных файлов. Вы не должны касаться этих файлов, которые гарантированно существуют в macOS.
Homebrew устанавливается отдельно в /usr/local/Cellar. Используйте Homebrew для управления установкой Python и полностью игнорируйте установку системы.
/system
. None = Not One, Zero, Zip, Nada. Есть вещи, которые нужно удалить в 1) папке Python 3.3 в папке «Приложения». 2) /Library/Frameworks/Python.framework 3) ~ 20 симлинков в /usr/local/bin. 4) ссылки в пути к оболочке (если есть). Я не думаю, что кто-то из них поразит защиту, о которой вы говорите. Что мне не хватает?$which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
$ which python3
/usr/local/bin/python3
плюс python 2.3, 2.4, 2.5, 2.7 и текущий, расположенный по адресуSystem/Library/Frameworks/Python.framework/Versions/...
зипзит
без холма
ночная тень
Иван Проскуряков
/System/Library/Frameworks/Python.framework/
, что никогда нельзя удалять, ссылка docs.python.org/3/using/mac.htmlГрафическийТочка
Standaa - Помни Монику