web-dev-qa-db-ja.com

インストール方法Python 3.6?

この記事の執筆時点では最新の3.6である3.6をインストールしたいと思います。ただし、リポジトリはPython 3.4.2が最新バージョンであることを示しています。

私はもう試した:

$ Sudo apt-get update
$ Sudo apt-get install python3

python3 is already the newest version.

$ python -V

Python 3.4.2

WindowsワークステーションでPython 3.6にアップグレードするには、exeをダウンロードして「次へ」を数回クリックするだけで完了します。適切で正式に承認されたインストール手順は何ですかPython 3.6 Debian Jessieで?

118
dvtan

編集メモ:
この回答へのコメントを読んでください。


DebianのリポジトリにはPython 3.6がありませんが、テストではそれがあります。

$ Sudo nano /etc/apt/sources.list
# add
deb http://ftp.de.debian.org/debian testing main
$ echo 'APT::Default-Release "stable";' | Sudo tee -a /etc/apt/apt.conf.d/00local
$ Sudo apt-get update
$ Sudo apt-get -t testing install python3.6
$ python3.6 -V

あなたが求めたのは:

適切で公式に承認された手順

しかし、テスト用リポジトリを使用しているため、これは公式のソリューションではないことを指摘しなければなりません。

次のようにして、Debian 8にPython-3.6をインストールできます。

wget https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tgz
tar xvf Python-3.6.9.tgz
cd Python-3.6.9
./configure --enable-optimizations --enable-shared
make -j8
Sudo make altinstall
python3.6

公式ウェブサイト に従ってmake altinstallを使用することをお勧めします。

pipを含めたい場合は、--with-ensurepip=installをconfigure呼び出しに追加する必要があります。詳細については、./configure --helpを参照してください。

警告:make installは、pythonバイナリを上書きまたはマスカレードできます。したがって、make altinstallのみをインストールするため、make installではなくexec_prefix/bin/pythonversionをお勧めします。

いくつかの既知の問題を回避するためにいくつかのパッケージをインストールする必要があります。以下を参照してください 一般的なビルドの問題 (更新)

Ubuntu/Debian:

Sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
xz-utils tk-dev libffi-dev liblzma-dev

Libreadline-devの代替:

Sudo apt install libedit-dev

Fedora/CentOS/RHEL(aws ec2):

Sudo yum install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel \
openssl-devel xz xz-devel libffi-devel

Openssl-develの代替:

Sudo yum install compat-openssl10-devel --allowerasing

更新

最新のpython-x.y.z.tar.gzこちら からダウンロードできます。

デフォルトのpythonバージョンを設定し、それらを簡単に切り替えるには、update-alternativesを複数のpythonバージョンで更新する必要があります。

Debian stretchにpython3.7をインストールしたとします。コマンドwhereis pythonを使用して、バイナリ(*/bin/python)を見つけます。例えば:

/usr/local/bin/python3.7
/usr/bin/python2.7
/usr/bin/python3.5

pythonバージョンを追加します:

update-alternatives --install /usr/bin/python python /usr/local/bin/python3.7 50
update-alternatives --install /usr/bin/python python /usr/bin/python2.7 40
update-alternatives --install /usr/bin/python python /usr/bin/python3.5 30

優先順位がpython3.750がデフォルトになりましたpython、python -Vは次のように出力します:

Python 3.7.0b2

それらを切り替えるには、以下を使用します。

update-alternatives --config python

出力例:

There are 3 choices for the alternative python (providing /usr/bin/python).

  Selection    Path                      Priority   Status
------------------------------------------------------------
* 0            /usr/local/bin/python3.7   50        auto mode
  1            /usr/bin/python2.7         40        manual mode
  2            /usr/bin/python3.5         30        manual mode
  3            /usr/local/bin/python3.7   50        manual mode

Press <enter> to keep the current choice[*], or type selection number: 
171
GAD3R

公式の推奨事項は、「実際には新しいソフトウェアは必要ない」です。

シャイニーニュースタッフシンドロームに苦しむな-DontBreakDebian | Debian Wiki

このページのアドバイスのほとんどは、システム全体でソフトウェアを利用できるようにしたい場合にどうするかを対象としていますが、この場合は必要ないと思います。

pythonソースをフェッチする場合は、--prefixを使用して3.6インタープリターをビルドし、最終的な場所を制御してから、virtualenv--pythonオプションとともに使用します、その後、プロジェクトの外部に影響を与えることなくpython 3.6を使用できます。

プロセスは次のようになります。

$ cd ~
$ mkdir pythonroot
$ mkdir opt
$ mkdir app
$ cd opt
$ wget <python tarball>
$ tar -xvf <python tarball>
$ cd python-3.6
$ ./configure --prefix="$HOME"/pythonroot
$ make
$ make install
$ cd ~
$ cd app
$ virtualenv venv --python ~/pythonroot/bin/python
$ . venv/bin/activate
[venv]$ which python
/home/<user>/pythonroot/bin/python

これを行う場合は、Python configureスクリプト内の --enable-optimizationsフラグ を検討することをお勧めします。プロファイルに基づく最適化などの一部の機能を有効にします。ビルド時間は長くなりますが、一部のベンチマークによれば、インタープリターが10%ほど高速になるようです。

35
Gregory Nisbet

pyenvhttps://github.com/yyuu/pyenv をご覧になることをお勧めします。 Amaral Labのpyenvチュートリアルから引用するには:

以前はPythonbrewとして知られていたpyenvを使用すると、グローバルPythonバージョンの変更、複数のPythonバージョンのインストール、ディレクトリ(プロジェクト)固有のPythonバージョンの設定、およびyes create/manage仮想python環境( "virtualenvs")。これはすべて、*Python自体に依存せずに* NIXスタイルのマシン(LinuxおよびOS X)で行われ、ユーザーレベルで機能します。Sudoコマンドは必要ありません。

13
schaiba

私が好む方法は、 Anaconda または Miniconda を使用して、pythonおよびDebianにインストールされているパッケージの最新バージョンを維持することです。

それはすべてフォルダにきちんと保存されているので、必要に応じて後で簡単に削除できます。インストーラーはbashrcへのパスも追加します(別のシェルを使用する場合は自分で追加します)。

これには、pipと、numpyのようなより複雑なパッケージに適したパッケージマネージャーであるcondaが付属しています。 Minicondaは必要最低限​​のインストールであり、Anacondaは主にデータ分析用に設計された多くのパッケージを含むフルインストールです。

早く:

wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

Bash add pathを使用していない場合は、ライセンスを読んで同意します:export PATH="/home/$USER/miniconda3/bin:$PATH"

テスト:

$ python --version
Python 3.6.0 :: Continuum Analytics, Inc.

PyPiからインストール:

# pip install fava

Condaからインストール:

# conda install numpy

削除したい場合は、フォルダ~/miniconda3およびbashrcのパス。

11
alexjj

DebianのリポジトリにはPython 3.6がありません。ここに、現在のPython3ステータスのスナップショットを示します。

wheezy (oldstable) (python): interactive high-level object-oriented language (default python3 version)
    3.2.3-6: all
jessie (stable) (python): interactive high-level object-oriented language (default python3 version)
    3.4.2-2: AMD64 arm64 armel armhf i386 mips mipsel powerpc ppc64el s390x
stretch (testing) (python): interactive high-level object-oriented language (default python3 version)
    3.5.1-4: AMD64 arm64 armel armhf i386 mips mips64el mipsel ppc64el s390x
sid (unstable) (python): interactive high-level object-oriented language (default python3 version)
    3.5.1-4: alpha AMD64 arm64 armel armhf hppa hurd-i386 i386 kfreebsd-AMD64 kfreebsd-i386 m68k mips mips64el mipsel powerpc powerpcspe ppc64 ppc64el s390x sh4 sparc64 x32

あなたはこれらをチェックすることができます ここ

ソースから、またはホームディレクトリのインストールにLinuxbrewなどを使用して、3.6をインストールできます。

3
Dennis Chen

これとともに

Sudo echo "http://ftp.fr.debian.org/debian testing main" >> /etc/apt/sources.list

Sudo apt-get update
Sudo apt-get install -y python3.6

うまくいきました。

詳細:python3.6をデフォルトとして設定

Sudo alias python=/usr/bin/python3.6

たった今 :

python --version
Python 3.6
3
Sean S

Python 3.6(ただしrc1)がDebian実験版に到着しました。私はこれをDebian安定版(jessie)で正常にビルドすることができました。以下に貼り付けたビルドの最終ステップを参照してください。

ただし、それが正常にインストールされ、notが問題を引き起こすという意味ではありません。適切な次のステップは、安定版のテストVMでテストすることです。誰かが気にしたら、私はそれを試すことができます-または他の誰かが試すことができます。

適切なリリースバージョンがまもなくDebian不安定版に到着する予定です。

dh_builddeb -a
dpkg-deb: building package `python3.6' in `../python3.6_3.6.0~rc1-1_AMD64.deb'.
dpkg-deb: building package `python3.6-venv' in `../python3.6-venv_3.6.0~rc1-1_AMD64.deb'.
dpkg-deb: building package `libpython3.6-stdlib' in `../libpython3.6-stdlib_3.6.0~rc1-1_AMD64.deb'.
dpkg-deb: building package `python3.6-minimal' in `../python3.6-minimal_3.6.0~rc1-1_AMD64.deb'.
dpkg-deb: building package `libpython3.6-minimal' in `../libpython3.6-minimal_3.6.0~rc1-1_AMD64.deb'.
dpkg-deb: building package `libpython3.6' in `../libpython3.6_3.6.0~rc1-1_AMD64.deb'.
dpkg-deb: building package `python3.6-dev' in `../python3.6-dev_3.6.0~rc1-1_AMD64.deb'.
dpkg-deb: building package `libpython3.6-dev' in `../libpython3.6-dev_3.6.0~rc1-1_AMD64.deb'.
dpkg-deb: building package `python3.6-dbg' in `../python3.6-dbg_3.6.0~rc1-1_AMD64.deb'.
dpkg-deb: building package `libpython3.6-dbg' in `../libpython3.6-dbg_3.6.0~rc1-1_AMD64.deb'.
 dpkg-genchanges  >../python3.6_3.6.0~rc1-1_AMD64.changes
dpkg-genchanges: including full source code in upload
 dpkg-source --after-build python3.6-3.6.0~rc1
dpkg-buildpackage: full upload (original source is included)
Now running lintian...
W: python3.6 source: newer-standards-version 3.9.8 (current is 3.9.6)
N: 56 tags overridden (26 errors, 27 warnings, 3 info)
Finished running lintian.
1
Faheem Mitha

2019年9月の時点で、最新のdebian安定版(buster)にはpython 3.7が含まれています。したがって、正式に承認された適切な手順は debian busterにアップグレード になります。

0
TamaMcGlinn