Mac OS X에서 Python을 올바르게 업데이트하는 방법


6

Python 웹 사이트에서 python을 다운로드하고 설치 프로그램으로 설치하려고하면 설치되지만 터미널에서 프로그램을 실행할 때 새 버전의 Python을 원하도록 지정해야합니다. 방금 입력하면 :

python app.py

이전 버전으로 실행됩니다.

새 버전을 기본값으로 설정하려면 어떻게합니까?

답변:


7

나는 그것을하는 방법을 마침내 찾았다. 설치 프로그램은 / Application에 python 2.6 폴더를 만들었습니다.이 폴더에는 Update Shell Profile이라는 스크립트가 있습니다.


네. Python 2.6에는 이제 명령 줄에서 기본값으로 설정하는 스크립트가 포함되어 있습니다.
jweede

5

두 가지 질문 :

  1. 새로운 파이썬은 어디에 설치 되었습니까?
  2. $ PATH는 어떻게 생겼습니까?

유닉스 계열 시스템의 기본 설정은 사용자 설치 소프트웨어가 / usr / local / bin에 설치되고 대부분의 * nix 배포판은 기본 디렉토리 인 $ PATH 변수에서 해당 디렉토리 시스템 전체 디렉토리 앞에 놓는 것입니다. 쉘은 프로그램을 찾을 위치를 알고 있습니다). 이렇게하면 새로운 것을 설치하면 새 항목이 먼저 발견됩니다.

그러나 기본 OS X $ PATH는 다음과 같습니다.

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

문제는 / usr / local / bin을 너무 늦게 두면 시스템 전체의 Python ( / usr / bin 에 있고 $ PATH의 초기에 있음)이 계속 적중 한다는 것입니다 .

내 대답은 Mac에서 $ PATH를 다음과 같이 만드는 것입니다.

/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin

이를 수행하려면 홈 디렉토리에 .profile 파일을 작성하고 다음과 같이 추가하십시오.

#### Let's take care of our $PATH
# A backup of the original $PATH
# /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

# My preferred order - /usr/local goes first, damn it!
PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11/bin

편집 : 댓글에 너무 오래 걸리므로 댓글이 아닌 여기에 후속 조치를 취하고 있습니다. 당신의 행 의 .profile 와 함께 /sw/bin/init.sh패키지 관리자에서 오는 핑크 난 당신이 사용하는 가정 (또는 지점에서 사용)하고 있습니다. 다른 줄은 어느 시점에서 MacPython을 설치하고 다시 작성했다고 제안하는 것 같습니다 $PATH. MacPython을 모르지만 이 사이트 인 경우 2004 년 이후로 업데이트되지 않았습니다. 또한 10.3 이후의 OS X 버전에 대해서는 이야기하지 않는 것 같습니다.

이제 더 혼란 스럽습니다 : 언제 파이썬을 업데이트 했습니까? 어떻게 업데이트 했습니까? 어떤 OS X 버전을 사용하고 있습니까?


est -r /sw/bin/init.sh &&. /sw/bin/init.sh # MacPython 2.6에 대한 PATH 설정 # 원래 버전은 .profile.pysave에 저장됩니다. PATH = "/ Library / Frameworks / Python.framework / Versions / 2.6 / bin : $ {PATH}"export PATH 이것이 내 .profile의 모습입니다. 귀하의 프로필과 다르므로 어떻게해야할지 모르겠습니다. [코멘트로 코드를 포맷하는 방법이 있습니까?]
Philippe Mongeau

@Philippe : 게시물에서와 같이 역 따옴표를 사용하여 코드의 형식을 지정할 수 있습니다. 더 큰 문제에 대한 나의 답변은 게시물 자체를 참조하십시오.
Telemachus

마침내 해결 방법을 찾았습니다. 설치 관리자가 내 응용 프로그램 디렉토리에 폴더를 만들었습니다. 여기에는 유휴, 일부 예제 및 명령 줄을 업데이트 하는 스크립트 가 포함되어 있습니다 . 그리고 MacPython의 경우 xcode와 함께 설치되었다고 생각합니다. 어쨌든 나를 도와 주셔서 감사합니다.
Philippe Mongeau

@Telemachus 내가 MacPython가에서 .dmg를 설치 프로그램을 말한다 생각 python.org/download
las3rjock

@ Las3rjock : 쿨, 그건 내 추측보다 훨씬 낫다! 링크 주셔서 감사합니다.
Telemachus

-1

파이썬이 사는 곳을 찾으십시오.

$ which python
/usr/bin/python

심볼릭 링크인지 확인하십시오.

$ ls -Fal /usr/bin/python
lrwxr-xr-x  1 root wheel  72 May 19 12:02 /usr/bin/python@ -> ../../System/Library/Frameworks/Python.framework/Versions/2.5/bin/python

그렇다면 / usr / bin / python을 새 파이썬에 연결하십시오.

$ sudo ln -s (new python, maybe /System/Library/Frameworks/Python.framework/Versions/2.x/bin/python) /usr/bin/python

작동하는지 확인하십시오.

$ python --version
Python 2.xxx

4
그는 절대적으로해야 하지 이런 식으로 시스템의 기본 파이썬을 취소. OS X은 그것이 어디에 있는지 기대합니다. 이것은 큰 실수입니다.
Telemachus

질문에 대한 합법적 인 답변입니다. 나는 아무것도 터지지 않고 전에 그것을 해왔다. 다른 방법으로는 새로운 올바른 경로를 사용하는 뱅 경로가 / usr / bin / python 인 프로그램이 생성되지 않습니다.
Bill Weiss

3
@ 빌 : 나는 그것이 끔찍한 접근법이라고 생각합니다. 의 shebang으로 스크립트를 작성할 수 있으며 #!/usr/bin/env python, 시스템 전체의 perl 또는 python을 피할 수 있으면 대체하지 않아야합니다.
Telemachus

4
나는 Telemachus와 함께 있습니다. 표준 Mac은 그대로 유지하십시오. 사용자 정의 설치는 / usr / local 또는 / opt / local에 있으며 필요에 따라 PATH 및 기타 환경 변수를 조정합니다.
Doug Harris
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.