web-dev-qa-db-ja.com

apt-getを使用して別のPythonバージョンをインストールするにはどうすればよいですか?

Apt-getを使用してPythonの異なるバージョンをインストールするにはどうすればよいですか?

ソースtarボールを使用してインストールできることは明らかですが、ソースからインストールせず、代わりにパッケージマネージャーを使用することをお勧めします。確かに信頼できるどこかで、参照できる最新のPythonリリース用の.debファイルをビルドします(python.orgが私を超えていない理由)。

それらを参照するには何をする必要があり、次のバージョンにアップグレードするときにどのような問題が発生する可能性がありますか?

ソースからビルドする以外に方法がない場合、個別に検索してインストールすることなく、必要なすべての依存関係を提供する(擬似)パッケージをインストールできますか?私が得ないように:

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

Felix Krullは、基本的に任意のバージョンのPythonのPPAオファリングを実行します(真剣に、鮮やかな2.3.7ビルドがあります...) https://launchpad.net/~deadsnakes/+archive/ubuntu/ppa にある多くのUbuntuリリース用。

いつものこと:

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にアップグレードすると、メタパッケージpython3python3.5を指すように調整されます。破損は予想していませんが、この時点で外部リポジトリはもう必要ありません。したがって、本当に安全にするために、アップグレードを行う前にPPAをパージすることができます。

169
Nephente

この Youtubeリンク は、インストールに役立ちました。

手順は次のとおりです。

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

pythonがインストールされているかどうかを確認するには、python3.5elseと入力します。

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

次の手順(テスト済み)に従うだけです。

ステップ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 – Pythonソースのコンパイル

以下の一連のコマンドを使用して、altinstallを使用してシステムでpythonソースコードをコンパイルします。

cd Python-3.5.2
Sudo ./configure
Sudo make altinstall

make altinstallは、デフォルトのpythonバイナリファイル/usr/bin/pythonの置き換えを防ぐために使用されます。

ステップ4 – Pythonバージョンの確認

以下のコマンドを使用して、インストールされているpythonの最新バージョンを確認してください。

$ python3.5 -V

Python 3.5.2

ソース

13
Bilal

私の知る限り、少なくともdockerコンテナでは、apt-get python 3が決定的にできます。

最初に、コンテナを備えたubuntuコンテナに遭遇しました:

docker run -it --rm ubuntu:latest bash

その後、何らかの理由でいくつかのubuntuのものを更新する必要があったので、私は(コンテナ内で):

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は既にインストールされていると表示されるため動作しません。テンソルフロー(特にgcr.io/tensorflow/tensorflow:latest-devel-py3)のdockerイメージと、そのイメージ内の何か(既にpython 3.4を持っていると仮定していますが、他の何かかもしれません)pythonを更新してpython 3.5を取得できませんでした。


クレジット:私は次を尋ねたときにこれを発見しました: https://stackoverflow.com/questions/42122826/can-one-use-python-3-5-in-a-docker-container-based-out -of-the-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を使用しない限り、おそらく仮想envやconda/anacondaなどの仮想環境を使用する必要があります。ただ人々に思い出させたかった。

6
Charlie Parker

buntuパッケージ にリストされているapt-getを介してインストールできる新しいpythonディストリビューションがいくつかあります

例として、現在次のバージョンが利用可能です。

python2.7

python3.2

python3.4

python3.5

python3.6

可用性は、Ubuntuのリリースによってある程度異なります。たとえば、Xenial、Yakkety、Zestyで3.5が使用可能で、YakketyおよびZestyで3.6が使用可能ですが、apt-getを使用してこれらを取得するには、 niverse repository を有効にする必要があります。 Ubuntuのバージョンの可用性を確認するには、上記のリンクを確認してください。

PPPがTrustyに対しても3.6であるため、クイックピークは この回答 も有効であることを示しています。

2
Elder Geek

Apt-getを使用してpythonバージョンをインストールする代わりに、仮想環境を使用することを検討します。

仮想環境を使用する場合、 こちらを参照 は、Pythonで開発するための良い習慣です。 python環境を、インストールされているシステムpythonバージョンから分離できます。

さらに、ライブラリのインストール中に(pipなどを使用して)Sudoアクセスを取得する必要はありません。

0
devrimbaris

Conda は積極的に更新され、管理されたvenvに複数のpythonバージョンをインストールできます。バイナリ拡張機能のパスの問題は、使用するanaconda管理の依存関係/ PIPチェーンの多くで解決された可能性があります。

0
RobotHumans