Debianに最新のPythonバージョンを個別にインストールする方法またはアップグレードする方法


35

私はまだLinuxが初めてなので、実行可能ファイルとそのライブラリの場所とパッケージのインストール方法を理解しようとしているので、次のPythonバージョンを備えたDebian Wheezy 7.3があります。

  • Python 2.7.3(デフォルト)
  • Python 2.6.8

そのため、ディレクトリ/usr/bin/には、ターミナルから呼び出すことができるこれらのファイルがあります。

  • python(python2.7へのリンクです)
  • python2(python2.7へのリンク)
  • python2.6(Python 2.6.8実行可能ファイル)
  • python2.7(Python 2.7.3実行可能ファイル)

および/usr/lib/のメインフォルダー:

  • python2.6
  • python2.7

現在、Pythonの最新バージョンはインストールしたい2.7.6ですが、方法がわかりません。apt-getを使用してみました。

apt-get install python

出力しますpython is already the newest version.

では、最新バージョンのPythonをどのようにインストールできますか?上のPythonのダウンロードページ私は別のフォルダを持つように個別にインストールするためにそれを使用することができますどのようにソースtarball、そこにある/usr/lib/ようにpython2.7.6して作るpythonのリンクを/usr/bin/新しい実行ファイルにポイント、または多分それは何かを中断されません場合は、現在のバージョンをアップグレードするには。


Python 2.7.6をtesting / unstableからバックポートし、現在の2.7.3をそれに置き換えることができます。これにより、問題が発生することはほとんどありません。その場合、簡単に元に戻すことができます。
ファヒムミタ14

私はそれをインストールしませんでした。Debianを新規インストールし、コマンドラインから「python」と入力して、python3シェルにいます。
frozenjim

回答:


16

Pythonをインストールするためのvirtualenvpyenvまたはシステム全体に適用されない他の方法を探しているのでしょう。APT(Advance Package Tool)およびを使用する方法dpkgは、システムのすべての部分が調和して動作することを保証するため、自由に呼び出すことができる他のすべてのプログラムの隠された別のパスにpythonをインストールすることができます。pyenv/ の目的virtualenv。これは、システムを壊さずに最新バージョンのpythonをインストールする方法に答えます。

ところで、あなたはmadisonの Debianの最新バージョンのpythonをチェックアウトできますが、その時点での最新バージョンのpython 2はあなたが指摘したものです:

  ~  apt-cache policy python
python:
  Installed: 2.7.5-5
  Candidate: 2.7.5-5
  Version table:
 *** 2.7.5-5 0
        500 http://ftp.us.debian.org/debian/ testing/main i386 Packages
        100 /var/lib/dpkg/status

(pythonbrewはメンテナンスされなくなりました)。


ok pipとvirtualenvをルートとしてインストールしたので、新しいPythonバージョンで仮想環境を作成するにはどうすればよいですか?私が知っている限りでは、新しいバージョンを最初にインストールする必要がありますか?
ピエール14年

1
@ピーター最初のステップはであると思いますpyenv install 2.7.6。を使用してすべてのバージョンを確認できますpyenv install -l
Braiam 14年

27

たくさんの検索の後、ソースからPythonをビルドすることにしたので、Pythonダウンロードページから圧縮ソースtarballをダウンロードしましbuild-essentialた。ソースファイルをコンパイルできるように、パッケージをインストールする必要があります。

apt-get install build-essential

また、いくつかのPythonモジュールに必要なこれらの開発パッケージをインストールする必要があります。

libbz2-dev
libsqlite3-dev
libreadline-dev
zlib1g-dev
libncurses5-dev
libssl-dev
libgdbm-dev

次に、ダウンロードしたソースファイルを抽出します。

tar zxf Python-2.7.6.tgz

次にcd、抽出されたディレクトリに移動します。

cd Python-2.7.6

Pythonドキュメントの手順に従ってください:

./configure --prefix=/opt/python
make
make install # <- in the docs but don't execute: use checkinstall

/opt/python以前に作成したディレクトリの下にインストールすることを選択しました。また、後で簡単にアンインストールできるように、checkinstallパッケージを使用して.debファイルを作成しました。

apt-get install checkinstall

最後の行make installを次のように置き換えます:

checkinstall

今、私は新しいPythonインストールをして/opt/python/lib/python2.7おり、バイナリファイルはにあり/opt/python/bin/python2.7ます。

コマンドラインで実行して/opt/python/bin/python2.7このPythonバージョンを使用できるようになりました。また、この実行可能ファイルへのリンクを作成して、フルパスを入力しないようにしましたpython2.7.6

ln -s /opt/python/bin/python2.7 /usr/local/bin/python2.7.6

また、ディレクトリ/opt/python/binには後でインストールする他のモジュールpipなどの実行可能ファイルが含まvirtualenvれるため、PATH環境変数に~/.profile追加し、次の行を編集して追加できます。

PATH="$PATH:/opt/python/bin"

そして実行:

source ~/.profile

それがでているような実行ファイルの名前が含まれているので、私は最後にパスを追加/usr/binのようなpythonpython2そしてpython2.7私たちは、のために高い優先順位をキープ/usr/bin


さて、あなたはapt-getを介してインストールされたモジュールを見るために新しいPythonを設定する方法を知っているでしょうか?
エルスルド

残念ながら、Pythonの2.6のために、ソースからコンパイルするDebianの8(ジェシー)で正常に動作しませんが、私は、私はから古いパッケージを使用することができたことを、少なくともラズベリーパイのために、見つけpackages.debian.org。build-essentialsがすでに配置されていると仮定した場合の順序は、libdb、python2.6-minimal、python2.6、libpython2.6、python2-6-devのdpkg -iようなものですが、必要なものがわかります。
チャーリークラーク

1
@elsurudo新しいバージョンではモジュールがサポートされていない可能性が高いため、これはあまり意味がありません。(ソースからコンパイルするときのように)Pythonを完全に制御したい場合は、モジュールも個別にインストールする必要があります。
トリプリー

-1

次を使用できます:

aptitude install python3.5  

または、aptitudeをインストールしていない場合は、次を使用してインストールできます。

apt-get install aptitude
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.