brew를 사용하여 macOS에서 이전 버전의 Python 3을 어떻게 설치할 수 있습니까?
이 명령으로 brew install python
최신 버전의 Python 3 (현재 v3.7.0)을 얻었지만 마지막 버전의 Python 3.6 (현재 3.6.5)을 원합니다.
pyenv
다른 파이썬 설치를 처리하는 데 도움이되는 다른 패키지에 대해 읽었 지만이 솔루션은 나에게 적합하지 않습니다.
brew를 사용하여 macOS에서 이전 버전의 Python 3을 어떻게 설치할 수 있습니까?
이 명령으로 brew install python
최신 버전의 Python 3 (현재 v3.7.0)을 얻었지만 마지막 버전의 Python 3.6 (현재 3.6.5)을 원합니다.
pyenv
다른 파이썬 설치를 처리하는 데 도움이되는 다른 패키지에 대해 읽었 지만이 솔루션은 나에게 적합하지 않습니다.
답변:
Python 3.6.5를 새로 설치하려면 다음을 사용하십시오.
brew unlink python # ONLY if you have installed (with brew) another version of python 3
brew install --ignore-dependencies https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb
이전에 설치된 버전을 복구하려면 다음을 수행하십시오.
brew info python # To see what you have previously installed
brew switch python 3.x.x_x # Ex. 3.6.5_1
Homebrew로 Python을 설치하는 데에는 두 가지 공식이 있습니다 : python@2
및 python
.
첫 번째는 Python 2이고 두 번째는 Python 3입니다.
참고 : 웹에서 python3
Python 버전 3을 설치하기위한 수식 이름으로 언급 된 오래된 답변을 찾을 수 있습니다 python
.
기본적으로 이러한 공식을 사용하면 해당하는 주요 버전의 Python 최신 버전을 설치할 수 있습니다. 따라서 3.6과 같은 부 버전을 직접 설치할 수 없습니다.
를 사용 brew
하면 공식 주소를 사용하여 패키지를 설치할 수 있습니다 (예 : git 저장소).
brew install https://the/address/to/the/formula/FORMULA_NAME.rb
또는 특히 Python 3
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/COMMIT_IDENTIFIER/Formula/python.rb
지정해야하는 주소는 원하는 버전에 대한 공식 (python.rb)의 마지막 커밋에 대한 주소입니다. homebrew-core / Formula / python.rb의 히스토리를 보면 커 민트 식별자를 찾을 수 있습니다.
https://github.com/Homebrew/homebrew-core/commits/master/Formula/python.rb
위의 링크에는 3.6.5 이상의 Python 버전에 대한 공식이 없습니다. (공식) 저장소의 관리자가 Python 3.7을 출시 한 후에는 Python 3.7의 레시피에만 업데이트를 제출합니다.
위에서 설명한 것처럼 homebrew에는 Python 2 (python @ 2)와 Python 3 (python) 만 있으며 Python 3.6에 대한 명시적인 공식은 없습니다 .
이러한 사소한 업데이트는 대부분의 경우와 대부분의 사용자와 관련이 없지만 대부분 3.6에 대한 명시 적 수식을 작성했는지 검색합니다.
Error: python 3.7.0 is already installed To install 3.6.5_1, first run
'짧은 답변'을 사용할 때 brew unlink python`` 이 오류가 발생했습니다 .
업데이트 할 때
brew unlink python # If you have installed (with brew) another version of python
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb
당신은 발생할 수 있습니다
Error: python contains a recursive dependency on itself:
python depends on sphinx-doc
sphinx-doc depends on python
이를 무시하려면 --ignore-dependencies
brew install에 인수를 추가하십시오 .
brew unlink python # If you have installed (with brew) another version of python
brew install --ignore-dependencies https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb
내가 한 일은 처음으로 파이썬 3.7을 설치하는 것이 었습니다
brew install python3
brew unlink python
그런 다음 위의 링크를 사용하여 Python 3.6.5를 설치했습니다.
brew install --ignore-dependencies https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb --ignore-dependencies
그 후 나는 달렸다 brew link --overwrite python
. 이제 가상 환경을 만들기 위해 시스템에 모든 파이썬이 있습니다.
mian@tdowrick2~ $ python --version
Python 2.7.10
mian@tdowrick2~ $ python3.7 --version
Python 3.7.1
mian@tdowrick2~ $ python3.6 --version
Python 3.6.5
Python 3.7 가상 환경을 만들려면
mian@tdowrick2~ $ virtualenv -p python3.7 env
Already using interpreter /Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7
Using base prefix '/Library/Frameworks/Python.framework/Versions/3.7'
New python executable in /Users/mian/env/bin/python3.7
Also creating executable in /Users/mian/env/bin/python
Installing setuptools, pip, wheel...
done.
mian@tdowrick2~ $ source env/bin/activate
(env) mian@tdowrick2~ $ python --version
Python 3.7.1
(env) mian@tdowrick2~ $ deactivate
Python 3.6 가상 환경을 만들려면
mian@tdowrick2~ $ virtualenv -p python3.6 env
Running virtualenv with interpreter /usr/local/bin/python3.6
Using base prefix '/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6'
New python executable in /Users/mian/env/bin/python3.6
Not overwriting existing python script /Users/mian/env/bin/python (you must use /Users/mian/env/bin/python3.6)
Installing setuptools, pip, wheel...
done.
mian@tdowrick2~ $ source env/bin/activate
(env) mian@tdowrick2~ $ python --version
Python 3.6.5
(env) mian@tdowrick2~ $
python -V && python3.7 -V && python3 -V && python3.6 -V
Python 2.7.15 Python 3.7.3 Python 3.7.3 zsh: command not found: python3.6
python3 -V
두 번 3.7.3
잃어버린 이유를 두 번 3.6
python3.6
아래에 숨겨져 /usr/local/Cellar/python/3.6.5_1/bin
있습니다. 일단 링크를 만들면 말한대로 작동합니다. 이 파이썬 자체 관리 시스템은 브라운 운동으로 코딩하는 백만 프로그래머의 루브 골드버그 프랙탈 인 것 같습니다.
파이썬 3.4.4를 설치하기 위해 위의 모든 대답을 시도했습니다. 파이썬 설치는 효과가 있었지만 PIP가 설치되지 않았고 작동시키기 위해 할 수있는 일은 없었습니다. zlib, openssl과 관련된 문제를 일으키는 Mac OSX Mojave를 사용하고있었습니다.
하지 말아야 할 것 :
해결책:
추신 : 시스템에서 다른 버전의 Python을 제거 할 필요는 없습니다.
편집하다:
MacOSX, Windows, Linux 등에서 작동하는 훨씬 더 나은 솔루션을 찾았습니다.
conda init
conda create -n [NameOfYour VirtualEnvironment] python=3.4.4
conda info --envs
conda activate [The name of your virtual environment that was shown with the command at step 5]
나는 모든 것을 시도했지만 작동시키지 못했습니다. 마침내 나는 pyenv
그것을 사용 했고 그것은 매력처럼 직접 일했다.
따라서 homebrew
설치하면 다음과 같이하십시오.
brew install pyenv
pyenv install 3.6.5
virtualenvs를 관리하는 방법 :
brew install pyenv-virtualenv
pyenv virtualenv 3.6.5 env_name
참조 pyenv 및 pyenv-VIRTUALENV를 를 참조하십시오.
pyenv와 pyenv-virtualenv direclty를 설치하기 위해 pbrewv-installer를 사용하는 것이 homebrew보다 쉽습니다.
curl https://pyenv.run | bash
파이썬 버전을 관리하려면 다음을 수행하십시오.
pyenv global 3.6.5
또는 주어진 디렉토리에서 로컬로 :
pyenv local 3.6.5
virtualenv
접근 방식으로 회피하는 것 입니다.
pyenv
venv를 사용하지 않고도 파이썬 버전을 관리 할 수 있습니다
아래와 같이 핍 문제에 직면 한 사람
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
근본 원인은 openssl 1.1이 더 이상 python 3.6을 지원하지 않기 때문입니다. 따라서 이전 버전 openssl 1.0을 설치해야합니다
해결책은 다음과 같습니다.
brew uninstall --ignore-dependencies openssl
brew install https://github.com/tebelorg/Tump/releases/download/v1.0.0/openssl.rb
이 문제를 해결하기 위해 homebrew
임시로 날짜를 변경 homebrew-core
하고 HOMEBREW_NO_AUTO_UPDATE
변수를 유지 하도록 변수를 설정할 수 있습니다 .
cd `brew --repo homebrew/core`
git checkout f2a764ef944b1080be64bd88dca9a1d80130c558
export HOMEBREW_NO_AUTO_UPDATE=1
brew install python
보안 패치를 놓칠 수 있으므로 homebrew-core를 영구적으로 업데이트하지 않는 것이 좋지만 테스트 목적으로 유용합니다.
다음 brew extract
명령을 사용하여 이전 버전의 홈 브루 수식을 자신의 탭 (tap_owner / tap_name)으로 추출 할 수도 있습니다 .
brew extract python tap_owner/tap_name --version=3.6.5
가장 쉬운 방법은 Anaconda를 설치하는 것이 었습니다 : https://docs.anaconda.com/anaconda/install/
거기에서 원하는대로 다른 Python 버전으로 많은 환경을 만들고 마우스 클릭으로 환경을 전환 할 수 있습니다. 더 쉬울 수 없었습니다.
다른 파이썬 버전을 설치하려면 다음 지침을 따르십시오 https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-python.html
다른 Python 버전의 새로운 개발 환경이 2 분 이내에 완료되었습니다. 앞으로는 쉽게 앞뒤로 전환 할 수 있습니다.