Como instalar uma versão específica do python no OS X


Respostas:


11

Eu fiz esse tipo de coisa de duas maneiras - no entanto, ambas não coexistem com o homebrew, embora eu suspeite que deva haver um caminho semelhante ao do macports.

O primeiro é usar o Macports como gerenciador de pacotes. Existem portas separadas para várias versões python 2.xe 3.x atualmente 2.4, 2.5, 2.6, 2.7 e 3.1, 3.2, 3.3 3.4 e 3.5. Por exemplo, para instalar o 3.4 do sudo port install python34Existe também uma porta python_select que, executando-a, permite escolher qual versão do python é executada por / opt / bin / python.
Cada gerenciador de pacotes precisa executar como o único gerenciador de pacotes, caso contrário, será confundido com diferentes versões inesperadas de bibliotecas e executáveis ​​em seus caminhos.

A outra maneira é instalar diretamente do python.org. Isso instalará um python em / usr / local / bin. Acho que isso instala um executável python e python3. O problema com o Homebrew é que ele pressupõe que as coisas em / usr / local são instaladas por ele e, portanto, o brew doctor relatará esses pythons e bibliotecas python.org como problemas e, como essa pergunta mostra também as estruturas em / Library, será problemático.

EDIT 8/2018 *** Gostaria agora de sugerir o uso de conda miniconda ou anaconda. Este é outro gerenciador de pacotes, mas baseado e destinado principalmente ao python, também fornece o equivalente aos ambientes virtuais e pyenv do python (conforme outra resposta ) e, portanto, cada projeto pode estar em um python diferente e em bibliotecas diferentes (o Macports apenas alterna a versão do python para todos os projetos)



1
@Raz é assim que se instala um ou outro, não instala ambos e chnage entre eles - ou entendo mal a resposta - se for simples, por favor, dê como resposta - espero que de uma maneira simples
user151019

@ Mark eu precisava executar meu projeto na versão específica do python e o Google dá essa resposta. Como o brew é mencionado na pergunta, eu preferiria instalar uma versão python adicional do que o gerenciador de pacotes adicional. Meu comentário foi para googlers como eu.
Raz

47

$ brew install python3 é igual a seguir

$ brew install https://github.com/Homebrew/homebrew-core/blob/master/Formula/python.rb

Tão. Se você deseja instalar uma versão específica, verifique antes da instalação.

  • Verifique o histórico do git do python.rb
  • Encontre a versão que você deseja. Agora você pode usar brew installcom o hash de confirmação correspondente:
    • 3.4.3_2: brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/bd43f59bd50bb49242259f327cb6ac7a8dd59478/Formula/python3.rb
    • 3.5.2_3: $ brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/ec545d45d4512ace3570782283df4ecda6bb0044/Formula/python3.rb
    • 3.6.5_1: brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb

Há também: https://github.com/sashkab/homebrew-python, onde você pode instalar usando brew install sashkab/python/python34ebrew link python34 --force

Observe que python3.rb foi renomeado para python.rb em algum momento. Mude o URL, se necessário.


Como um FYI: Python 3.4.3_2 é $ brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/bd43f59bd50bb49242259f327cb6ac7a8dd59478/Formula/python3.rbe python3.4 -Vdeve funcionar.
iwasrobbed

@iwasrobbed é 404: Não foi encontrado neste momento
Никита Конин

Isso não instalou o pip3. :(
Kirby

Infelizmente, a página do navegador para a fórmula do Python 3 não será exibida. Diz algo sobre a história ser muito longa e demorada demais para gerar na página. Fiquei tentado, mas não clonei o repositório inteiro.
Mike Williamson

7
O arquivo já python3.rbfoi renomeado python.rb. Tente o outro caminho. Como FYI: Python 3.6.5_1 é$ brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb
John Pang

36

Para python no mac, use pyenv

brew install pyenv
pyenv install <version>

Para selecionar uma versão

pyenv local 3.5.0

Para listar versões

pyenv versions

https://gist.github.com/Bouke/11261620

Você precisa exportar o PATH para substituir a versão python padrão.

PATH="~/.pyenv/versions/2.7.10/bin:${PATH}"

Eu uso esse python instalado 3.6.6rc1, mas o brew ainda aponta o python3 para 3.7.0. Como estou usando o Heroku e o Pipfile, use a 3.6, eu uso a outra resposta para instalar o 3.6.5 (o 3.6.6 não está disponível no GitHub, até onde eu sei).
John Pang

5

Parece uma abordagem muito mais fácil E fica longe de / usr / local / bin !!

https://github.com/sashkab/homebrew-python

Ainda não testei, mas promete poder instalar qualquer versão (e várias versões) do Python.

Incluindo 3.6.6, que não está disponível no núcleo de preparação, até onde eu sei.


projeto foi descontinuado
lobi 25/10
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.