Mac에서 Python 제거 및 재설치 —이 오래된 참조를 신뢰할 수 있습니까? Homebrew, Pip 및 XCode 사이에서 어떻게 든

나는 Mac에 익숙하지 않으며 분명히 일종의 오류가 발생했습니다. 나는 튜토리얼을 통해 파이썬을 배우고 Homebrew, Pip 및 XCode 사이에서 어떻게 든 내 버전이 혼합되어 있습니다. Pip3은 python2를 가리 키므로 모든 python3 시험은 실패합니다.

모든 버전을 안전하게 제거하고 새로 설치 (홈 브루?)를 위해 촬영하는 방법을 연구하고 있지만 약간 긴장합니다.

훌륭한 링크를 발견했습니다.

분명히 루트 /system디렉토리의 어떤 것도 건드리지 않으며 기본적으로 다른 모든 것은 삭제됩니다. 나를 긴장하게 만드는 것은이 링크가 꽤 오래되었다는 것입니다. (6 년! +) 나는 정말로 그들을 신뢰하는지 확실하지 않다.

최근에 여기에 아무도 없었나요? 위에 링크 된 게시물을 신뢰할 수 있습니까? 이 파이썬 버전 엉망을 어떻게 정리합니까? 참고 : MacOS Sierra (10.12.5)를 사용하고 있습니다



답변

그래서 모든 파이썬 설치를 제거하고 Homebrew를 통해 다시 설치했습니다.

  1. which python—> /Library/Frameworks/Python.framework/Versions/2.7/bin/python
    에서 전체 Python.framework 디렉토리를 삭제하십시오 /Library/Frameworks.
  2. which python3—> /usr/local/bin/python3 전체 python3 디렉토리를 삭제하십시오.
  3. 나는 심볼릭 링크에 대해 약간 긴장했다. 나는 처음에 분명히 문제를 일으켰던 이름을 변경했습니다. 그것은 불필요하다는 것이 밝혀졌습니다. 대신 다음을 사용하십시오.

    $ 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) 완벽하게 작동했습니다. 위의 모든 심볼릭 링크를 제거했습니다.

  4. homebrew를 통해 python 및 python3을 다시 설치하십시오. 다 했어요

/System폴더 에있는 파이썬 설치를 결코 만지지 않았습니다 .

아, 그리고 분명하다. 원래 질문에 대한 답은

예, 서면으로 이전 참조를 신뢰할 수 있습니다! 그 지침은 여전히 ​​유효합니다.


답변

내 파이썬 버전은 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.

답변

시스템 파일은 시스템 무결성 보호에 의해 보호됩니다. rm -rfSIP를 먼저 비활성화하지 않으면 / System의 임의 폴더에 대해이 지침을 따를 수 없습니다 .

그러나 파일이 보호되므로 파일이 수정되지 않았 음을 알 수 있습니다. ‘버전 혼란’은 셸 설정으로 인한 것이며 시스템 파일을 수정해도 변경되지 않습니다. macOS에 존재한다고 보장되는 이러한 파일을 건드리지 않아야합니다.

Homebrew는 / usr / local / Cellar에 별도로 설치됩니다. Homebrew를 사용하여 Python 설치를 관리하고 시스템 설치를 완전히 무시하십시오.