Ubuntu 12.04 LTS에서 최신 Python 2.7.x“올바른 방법”을 사용하는 방법은 무엇입니까?


28

내 프로젝트는 Python 릴리스에서 최신 상태를 유지해야하지만 현재 2.7.5가 나오더라도 12.04LTS는 현재 2.7.3에 붙어 있습니다. 수동으로 컴파일하지 않고 최신 상태를 유지할 수있는 방법이 있습니까? Python 용 패키지 기반 설치를 유지해야합니다. 이것을 처리하는 "올바른"방법은 무엇입니까?

감사!

답변:


14

편집 : * @Anthon이 의견에서 지적 했듯이이 PPA에는 Ubuntu 12.04 (Precise) 용 Python 2.7이 포함되어 있지 않습니다. 펑키 미래의 답변을 참조 아래에 내가 원래 응답 할 때 나는 존재 믿지 않는다.

기본적으로 해당 유니버스에 포함되지 않은 패키지를 처리하는 기본 "우분투"방법은 수동으로 컴파일하는 대신 PPA (타사 리포지토리)를 사용하는 것입니다. 이런 방식으로 패키지 관리, 업데이트 및 종속성 해결의 이점을 유지합니다.

그러나 타사 저장소가 요구 사항의 일부인 경우 공식적으로 지원 되지 않습니다 .

DeadSnakes (get it) PPA는 시스템 패키지 관리에 포함되지 않은 Python 릴리스를 유지 관리합니다.

sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python2.7

이 PPA에 대한 자세한 내용은 여기를 참조하십시오 .

그러나 DeadSnakes는 포함되지 않은 주요 버전 만 제공하고 포인트 릴리스는 제공하지 않으므로 Python 2.7은 포함되지 않습니다. Ubuntu는 이미 Ubuntu 12.04 용 2.7을 패키지하므로 DeadSnakes는이를 제공하지 않습니다.

이 경우 우분투와 함께 기본 패키징을 사용해서는 안되는 경우를 만드는 것이 좋습니다. DeadSnakes에서 발췌 한 내용을 참조하십시오.

Using third-party modules packaged for Debian or Ubuntu with the Python
interpreters from this repository is a bit of a mixed bag. For Python 2, Python
modules from the official repositories will not work, as a consequence of how
Python packaging works in Debian. For Python 3 on the other hand, all
pure-Python module packages at least should be available; compiled extension
modules will not work however.

In general, you're better off installing Python modules using the common Python
packaging tools rather than the system package manager. For an introduction into
the Python packaging ecosystem and its tools, refer to;
    http://guide.python-distribute.org/

A few of these tools might also be provided in this repository as a convenience.

운영 체제 패키지 관리를 사용해야하고 DeadSnakes에서 제공하는 패키지를 사용하여 다른 버전의 Ubuntu로 이동할 수 없거나 기본적으로 두 가지 옵션 만 남은 경우가 있습니다.

  1. Python 2.7.5의 백 포트를 Ubuntu 12.04로 요청할 수 있습니다.
  2. 필요한 Python 버전으로 자체 PPA 를 만들 수 있습니다 .

참고 : AskUbuntu 는 일반적으로 SuperUser보다 이와 같은 내용을 게시하는 것이 더 나은 StackExchange입니다.


고마워요! 당신의 경험에서 DeadSnakes는 잘 유지됩니까?

2
예, 인기가 높고 유지 관리가 잘된 것 같습니다. 나는 그것을 사용하여 예약이 거의 없었습니다.
krondor

1
12.04가 아닌 10.04에는 2.7.4 만 있습니다
Anthon

1
@Anthon 당신이 맞습니다, 나는 그것을 몰랐습니다. DeadSnakes는 주요 릴리스를 대체하지 않으므로 Ubuntu는 이미 Python 2.7을 번들로 제공하므로 Deadsnakes는 해당 시리즈에 대한 포인트 릴리스를 제공하지 않습니다. 오히려 그들은 정확한 3.3을 제공합니다. 이 경우에는 OP에 도움이되지 않습니다.
krondor

14.04에 나는 ppa:fkrull/deadsnakes-python2.7접미사 를 사용해야했다
Craig Younkins

37

Felix Krull은 Ubuntu Precise, Trusty 및 Utopic에 대한 최신 Python 2.7 릴리스가 포함 된 PPA 도 유지 관리했습니다 (현재 유지 관리하지 않은 상태). krondor describe와 동일한 프로세스를 사용할 수 있지만이 PPA를 대신 또는 추가적으로 사용하십시오 ppa:fkrull/deadsnakes-python2.7.

sudo add-apt-repository ppa:fkrull/deadsnakes-python2.7
sudo apt-get update
sudo apt-get install python2.7

이것이 정답입니다.
cr8ivecodesmith

1
현재 "종료"경고가 표시되지만 이전 Ubuntu 버전을 계속 실행하는 시스템에서는 잘 작동합니다. PPA는 버전 2.7.12-1~precise1( 2.7.12-1~trusty12.7.10-0+utopic112.04, 14.04 및 14.10)을 제공합니다.
mivk

5
그냥 참고 frull / deadsnakes - python2.7의 PPA가 중단됩니다. 2.7.13과 같은 최신 Python 2.7 릴리스의 경우 jonathonf / python-2.7 ppa를 사용해보십시오 .
소크라테스

경고 - 업그레이드 분포 (12 -> 14) 때 나를 위해 문제가 발생 .. 내가 정말 죽은 비단뱀 남겨졌다 .. 업그레이드하기 전에이 PPA를 취소 .. 확인
dermen

글쎄, 그것은 모든 배포 업데이트와 ppa에 해당됩니다.
funky-future
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.