'usr/bin/python' e 'python' executam versões diferentes

'usr/bin/python' e 'python' executam versões diferentes

No meu OS X, digitar /usr/bin/python no terminal executa o Python 2.6.1, mas digitar python executa o Python 2.7.2. Gostaria que o primeiro também executasse o 2.7.2 - como faço isso?

Responder1

A versão em /usr/bin/python é a versão instalada como parte do OS X. Digite 'qual python' para descobrir onde sua versão mais recente do python está localizada. Você provavelmente instalou uma versão mais recente via MacPorts ou algo semelhante.

Pode ser perigoso alterar para onde /usr/bin/python aponta caso seja necessário para outros aplicativos. Você pode alterar seus scripts python para que eles encontrem a versão python do usuário alterando a primeira linha de:

#!/usr/bin/python

para:

#!/bin/env python

Se você realmente deseja substituir /usr/bin/python, você pode fazer assim:

sudo mv /usr/bin/python /usr/bin/python.dist
sudo ln -s `which python` /usr/bin/python

No entanto, como eu disse, isso pode ser perigoso. Se precisar reverter essa alteração posteriormente, você pode executar:

sudo rm /usr/bin/python
sudo mv /usr/bin/python.dist /usr/bin/python

Por favor, execute-os com cuidado. Se você acidentalmente remover a versão python instalada no sistema no OS X, haverá alguma dificuldade em recuperá-la.

Responder2

Parece que este /usr/bin/pythoné o arquivo fornecido pela Apple. Como outros mencionaram, não toque nele.

O próprio arquivo parece estar apontando para (Referência 1):

/Library/Frameworks/Python.framework/Versions

Nesta pasta você poderá encontrar as versões 2.x ou 3.x instaladas mais recentes com uma pasta de link simbólico chamada Current/, onde Current/ apontará para a última versão instalada.

Observe que todas as versões do Python que você já instalou são colocadas em (Referência 2):

/System/Library/Frameworks/Python.framework/Versions

No meu caso tive que remover a pasta 2.5 da 'Referência 1' e fazer upload da 2.7 da 'Referência 2'. Então removi o link 'Atual' e criei um novo apontando para a pasta 2.7/ (ln -s 2.7/ Atual). [Não tenho certeza, o mesmo pode ser necessário para a outra pasta]

Agora, ao digitarpython --versãovocê deverá ver a versão do python apontando para o link Current/ mais recente que você criou, no meu caso era a versão 2.7.

Espero que tenha ajudado, funcionou aqui.

informação relacionada