apt-get을 사용하여 다른 Python 버전을 어떻게 설치합니까?


125

apt-get을 사용하여 다른 버전의 Python을 어떻게 설치할 수 있습니까?

분명히 소스 타르 볼을 사용하여 설치할 수 있다는 것을 알고 있지만 소스에서 설치하지 않고 패키지 관리자를 사용하는 것이 좋습니다. 확실히 유명한 곳은 내가 참조 할 수있는 최신 Python 릴리스 (python.org가 왜 나를 능가하지 않는지)에 대한 .deb 파일을 빌드합니다.

이를 참조하기 위해 무엇을해야하며 다음 버전으로 업그레이드 할 때 어떤 문제가 발생할 수 있습니까?

소스에서 빌드하는 것 외에 다른 방법이 없다면 각각 개별적으로 찾고 설치하지 않고도 필요한 모든 종속성을 제공 할 수있는 (의사) 패키지가 있습니까? 그래서 나는 얻지 못합니다 :

The necessary bits to build these optional modules were not found:
_bz2                  _curses               _curses_panel      
_dbm                  _gdbm                 _lzma              
_sqlite3              _ssl                  _tkinter           
readline              zlib  


E: Couldn't find any package by regex 'python3.5'통해 설치하지 못했 apt-get install python3.5습니까?
Charlie Parker


여기에 몇 가지 좋은 제안 : quora.com/...
찰리 파커 (Charlie Parker)

1
@CharlieParker Anaconda 설치를 시도 했습니까 ?
M. Becerra

답변:


169

Felix Krull은 https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa 에서 많은 우분투 릴리스에 대해 기본적으로 모든 버전의 Python (매우 생생한 2.3.7 빌드 ...)을 제공하는 PPA를 실행합니다 .

평소대로 :

sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt-get update
sudo apt-get install python3.5

python3.4여전히로 심볼릭 링크되어있는 기존 파일 을 덮어 쓰지 않습니다 python3.

심볼릭 링크를 변경하지 마십시오! python3.5에서 제대로 작동하지 않는 많은 시스템 기능이 있습니다.

나는 이것을 시도했지만 나중에 터미널, 소프트웨어 업데이터를 열 수 없었습니다 ...

cd /usr/bin
sudo rm python3

Wily로 업그레이드하면 메타 패키지가에 맞게 조정 python3됩니다 python3.5. 파손이 예상되지 않지만이 시점에서 외부 저장소는 더 이상 필요하지 않습니다. 따라서 안전을 위해 업그레이드를 수행하기 전에 PPA를 제거 할 수 있습니다.


5
멍청한 놈이 있기 때문에 symlink하지 마십시오! 또한 심볼릭 링크뿐만 아니라 당신이 파이썬 3.5 실행하려면 명령 줄에서 python3.5를 입력 할 필요가 의미
크리스 호크스

4
이 3.5에 3.4의 핍을 어떻게 사용할 수 있습니까?
Groosha

2
@ kondra007 나는 pip.pypa.io/en/stable/installing ( 경고읽으십시오)의 지침을 따랐 으며이 두 명령 wget https://bootstrap.pypa.io/get-pip.py; sudo python3.5 get-pip.py은 python 3.5에서 작동하는 pip를 주었지만 pip3.4는 더 이상 작동하지 않습니다. 더 잘 아는 사람은 의견을 말하십시오
ndemou

2
또한 python3.5를 기본값으로 설정 ~$ vim ~/.bashrc하고 이것을 추가하십시오 alias python=python3.5. 그때~$source ~/.bashrc
Krishnadas PC

1
팁 : 경우 add-apt-repository: command not found, 실행 apt-get install software-properties-common python-software-properties설치
미스릴

35

유튜브 링크 는 설치에 도움 이 되었습니다.

단계는 다음과 같습니다.

sudo apt-get install libssl-dev openssl
wget https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz
tar xzvf Python-3.5.0.tgz
cd Python-3.5.0
./configure
make
sudo make install

파이썬이 설치되어 있는지 확인하려면 python3.5else를 입력하십시오 .

sudo ln -fs /opt/Python-3.5.0/Python /usr/bin/python3.5

3
영업 이익은 그가 소스에서 컴파일하고 싶지 않았다
마이클 베이츠

3
네, 맞아요. 또한 소스에서 컴파일하면 약간의 종속성 문제가 발생할 수 있습니다. 그러나 이것이 내가 해결 한 방법입니다. 더 좋은 방법이 있다면 분명히 알고 싶습니다.
joydeep bhattacharjee

5
고려 ./configure --enable-optimizations stackoverflow.com/questions/41405728/...을
warvariuc

1
파이썬은 특정 OS를 위해 만들어지지 않았기 때문에 @CharlieParker. 모든 플랫폼에서 실행되어야합니다. Linux의 경우 이는 각 Linux 배포판의 각 버전 (많은 버전)에 대해 각 버전을 컴파일하고 배포해야하거나 소스를 배포하고 사용자가 원래 환경에서 직접 컴파일하도록합니다. 익숙한. 후자는 훨씬 더 실현 가능합니다.
CJStuart

2
또한 다음의 c / c ++ 컴파일러가 필요합니다apt-get install build-essential
bato3

13

다음 단계를 따르십시오 (테스트 됨).

1 단계 – 필수 패키지 설치

다음 명령을 사용하여 설치하기 전에 Python의 전제 조건을 설치하십시오.

sudo apt-get install build-essential checkinstall
sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev

2 단계 – Python 3.5.2 다운로드

Python 공식 사이트에서 다음 명령을 사용하여 Python을 다운로드하십시오. 아래 지정된 장소 대신 최신 버전을 다운로드 할 수도 있습니다.

cd /usr/src
sudo wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz

이제 다운로드 한 패키지를 추출하십시오.

sudo tar xzf Python-3.5.2.tgz

3 단계 – 파이썬 소스 컴파일

altinstall을 사용하여 시스템에서 파이썬 소스 코드를 컴파일하려면 아래 명령 세트를 사용하십시오.

cd Python-3.5.2
sudo ./configure
sudo make altinstall

make altinstall기본 python 이진 파일을 대체하지 못하도록하는 데 사용됩니다 /usr/bin/python.

4 단계 – 파이썬 버전 확인

아래 명령을 사용하여 최신 버전의 python을 확인하십시오.

$ python3.5 -V

Python 3.5.2

소스 .


2
기본적으로 altinstall을 사용하려면 +1입니다. 하나의 버전으로 살 수있는 실제 시나리오는 많지 않습니다. 기본적으로 Python3을 사용하는 시스템에서도 Python을 반대로-> Python2 또는 Python2를 추가하여 설치해야 할 수 있습니다.
erm3nda

1
여기에 설명 된대로 오류가 발생했습니다 -bugs.python.org/issue31652 를 실행 sudo apt-get install libffi-dev하여 문제를 해결해야했습니다.
Nishan Chathuranga

또한 sudo apt-get install liblzma-devlzma 지원을 활성화하기 위해 추가 할 것 입니다.
v.grabovets

6

내가 알 수있는 한, 적어도 도커 컨테이너에서 apt-get파이썬 3을 결정할 수 있습니다 .

먼저 컨테이너가있는 우분투 컨테이너를 만났습니다.

docker run -it --rm ubuntu:latest bash

그런 다음 어떤 이유로 든 우분투를 업데이트해야하므로 컨테이너 내부에서 수행했습니다.

apt-get update && apt-get install -y build-essential git libjpeg-dev

그런 다음 간단히 python3을 설치했는데 자동으로 python 3.5가있는 것 같습니다.

apt-get install python3
apt-get install python3-pip

pip 작동하는지 테스트하려면 뭔가를 다운로드 할 수 있습니다.

pip3 install tensorflow

모두 나에게 잘 작동하는 것 같습니다.

중요 사항 : 이미 python 3.4가 설치되어 있다면 이미 설치되어 있다고 말해서 apt-get install python3작동하지 않는 것 같습니다 . tensorflow (특히 gcr.io/tensorflow/tensorflow:latest-devel-py3) 의 도커 이미지에서 시작했기 때문에 문제 중 하나 인 것 같습니다. 특히 이미지가 이미 python 3.4이지만 다른 것이있을 수 있다고 가정하면 업데이트 할 수 없었습니다. 파이썬 3.5를 얻으려면 내 파이썬.


크레딧 : 나는 다음을 물었을 때 이것을 발견했다 : https : //.com -tensorflow-docker


참고 : Anaconda를 설치할 수도 있습니다. 도커 예제의 경우 다음을 수행 할 수 있습니다.

docker pull continuumio/anaconda3
docker run -i -t continuumio/anaconda3 /bin/bash

공식 웹 사이트에서 : https://hub.docker.com/r/continuumio/anaconda3/

이 솔루션은 python 3.6을 설치하지만 원하는 것을 찾으면 python 3.5를 얻을 수 있다고 확신합니다.

참고 : 어쨌든 docker를 사용하지 않는 한 virtual env 또는 conda / anaconda와 같은 가상 환경을 사용해야합니다. 사람들에게 상기시키고 싶었습니다.


1
"Docker 컨테이너에"는 매우 일반적인 문장입니다. 이는 컨테이너의 기반 이미지, 예를 들어 Ubuntu 버전에 따라 다릅니다. 하나의 우분투 버전에서 사용할 수없는 3.5 또는 3.6와 같은 또한,이있을 수 부 버전 (예 : 14.04)
giorgiosironi

2

Ubuntu 패키지에 나열된 apt-get을 통해 설치할 수있는 최신 Python 배포판이 많이 있습니다.

예를 들어 다음 버전이 현재 사용 가능합니다.

파이썬 2.7

파이썬 3.2

파이썬 3.4

파이썬 3.5

python3.6

가용성은 Ubuntu 릴리스에 따라 어느 정도 다릅니다. 예를 들어 Xenial, Yakkety 및 Zesty에 3.5를, Yakkety 및 Zesty에 3.6을 사용할 수 있지만 apt-get을 통해 유니버스 리포지토리 를 가져 오려면 활성화 해야합니다 . 사용중인 Ubuntu 버전의 가용성을 확인하려면 위의 링크를 확인하십시오.

PPA는 3.6도 신뢰할 수 있음에도 불구 하고이 답변 이 여전히 유효 함을 빠르게 확인할 수 있습니다.


Ubuntu Repo 에서 사용 가능한 Python 버전 은 최신 Python 버전 이 아닙니다 .
yaitloutou

@yaitloutou이 질문은 "최신"이 아니라 "최신"이라고 말합니다. 더 나은 답변을 자유롭게 작성하십시오.
Geek

당신은 정확하지만, 지정되지 않은 것에 상대적으로 새로운 이후로 나는 그것을 최신으로 해석했습니다 :)
yaitloutou

@yaitloutou 자유롭게 느끼시고 더 나은 답변을 작성하십시오! 나는 그것이 높이 평가 될 것이라고 확신한다.
Geek

나는 지금 막 활동하기 시작했고 여전히 배우고 있습니다. 죄송합니다 당신은 눈에 띄지 당신의 대답에 내 댓글 발견하면
yaitloutou

0

apt-get을 통해 파이썬 버전을 설치하는 대신 가상 환경을 사용하는 것이 좋습니다.

가상 환경을 사용하는 경우 여기에서 파이썬으로 개발하는 것이 좋습니다. 그들은 당신이 시스템에 설치된 파이썬 버전에서 파이썬 환경을 분리 할 수 ​​있습니다.

또한 라이브러리를 설치하는 동안 (pip 등을 통해) sudo 액세스 권한을 얻을 필요가 없습니다.


11
가상 환경에서 사용하기 전에 원하는 버전의 파이썬을 설치해야한다고 생각합니다.
Nzbuu

1
가상 환경에서 "활성화"스크립트를 실행하여 파이썬 관련 경로를 변경하는 것보다 가상 환경에서 원하는 버전의 파이썬을 설치합니다.
devrimbaris

이것은 실제로 내가하고 싶은 일입니다. @ Nephente의 대답을 따른 후에 가장 먼저 시도한 것은을 사용하여 지적했습니다 virtualenv -p. 그러나 "ImportError : name 'HTTPSHandler'를 가져올 수 없습니다."라는 메시지가 나타납니다.
Michael Scheper

1
이것이 왜 다운 보트입니까? 가상 환경은 일반적으로 잘 작동합니다.
Charlie Parker

어떻게 우분투에 가상 환경을 설치합니까? (파이썬 3.5)?
Charlie Parker

0

Conda 는 적극적으로 업데이트되며 관리되는 venvs에 여러 파이썬 버전을 직접 설치할 필요없이 설치할 수 있습니다. 이진 확장 경로 문제는 사용하는 많은 아나콘다 관리 종속성 / pip 체인에서 해결되었을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.