Ubuntu 18.04LTSにPython3.7をインストールします

Pythonは、オンデマンドで最も人気のある汎用プログラミング言語の1つです。これは、手続き型、オブジェクト指向、機能的プログラミングなど、さまざまなプログラミングパラダイムをサポートする、解釈された高レベルのプログラミング言語です。包括的な標準ライブラリのため、「pyにはバッテリーが付属している」とよく言われます。

初心者や科学者がさまざまな種類の活動に使用するため、広く使用されており、非常に用途の広いプログラミング言語です。これは、システムプログラミングとスクリプティング、反復タスクの自動化、WebサイトとWebアプリケーションの構築、機械学習アルゴリズム、データ分析などに使用されます。

このチュートリアルでは、Ubuntu 18.04 LTS BionicBeaverにPython3.7をインストールする方法を学習します。 Ubuntu 18.04マシンにインストールする主な方法は2つあります。1つはdeadsnake PPAを介してAPTパッケージマネージャーを使用する方法、もう1つはソースコードからコンパイルする方法です。

**APT(およびPPA)を使用して、ubuntu **にPython3.7をインストールします。

デフォルトでは、Ubuntu18.04にはPython3.6.9が付属しています。次のコマンドを実行すると、pythonバージョンを取得できます。

python3 --version
Python 3.6.9

python3-version Python 3.6.9最初に、Ubuntu18.04コンピューターのUbuntuパッケージリポジトリインデックスを更新する必要があります。これは、次のコマンドを実行することで実行できます。

$ sudo apt update

更新が完了したら、PPAをコンピューターに追加できるように、「software-properties-common」パッケージがコンピューターにインストールされていることを確認する必要があります。

$ sudo apt install software-properties-common

これで、次のコマンドを使用してDeadsnakesPPAを簡単に追加できます。

$ sudo add-apt-repository ppa:deadsnakes/ppa

最後に、必要なPPAをUbuntu 18.04コンピューターに追加した後、aptコマンドを使用してPython3.7をインストールするだけで済みます。

apt notifyコマンドの-yオプションは、自動yesオプションをプロンプトとして設定できます。

$ sudo apt install python3.7-y
Output
$ sudo apt install python3.7-y
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
 libpython3.7-minimal libpython3.7-stdlib python3-distutils python3-lib2to3
 python3.7-minimal
Suggested packages:
 python3.7-venv python3.7-doc binfmt-support
The following NEW packages will be installed:
 libpython3.7-minimal libpython3.7-stdlib python3-distutils python3-lib2to3
 python3.7 python3.7-minimal
0 upgraded,6 newly installed,0 to remove and 321 not upgraded.
Need to get4,792 kB of archives.
After this operation,26.6 MB of additional disk space will be used.
Do you want to continue?[Y/n] y
Get:1 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu bionic/main amd64 libpython3.7-minimal amd64 3.7.7-1+bionic1 [596 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu bionic-updates/main amd64 python3-lib2to3 all 3.6.9-1~18.04[77.4 kB]
Get:3 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu bionic/main amd64 python3.7-minimal amd64 3.7.7-1+bionic1 [1,839 kB]
Get:4 http://us.archive.ubuntu.com/ubuntu bionic-updates/main amd64 python3-distutils all 3.6.9-1~18.04[144 kB]
Get:5 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu bionic/main amd64 libpython3.7-stdlib amd64 3.7.7-1+bionic1 [1,784 kB]
Get:6 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu bionic/main amd64 python3.7 amd64 3.7.7-1+bionic1 [351 kB]
Fetched 4,792 kB in7s(737 kB/s)                                              
Selecting previously unselected package libpython3.7-minimal:amd64.(Reading database ...134446 files and directories currently installed.)
Preparing to unpack .../0-libpython3.7-minimal_3.7.7-1+bionic1_amd64.deb ...
Unpacking libpython3.7-minimal:amd64(3.7.7-1+bionic1)...
Selecting previously unselected package python3.7-minimal.
Preparing to unpack .../1-python3.7-minimal_3.7.7-1+bionic1_amd64.deb ...
Unpacking python3.7-minimal(3.7.7-1+bionic1)...
Selecting previously unselected package libpython3.7-stdlib:amd64.
Preparing to unpack .../2-libpython3.7-stdlib_3.7.7-1+bionic1_amd64.deb ...
Unpacking libpython3.7-stdlib:amd64(3.7.7-1+bionic1)...
Selecting previously unselected package python3-lib2to3.
Preparing to unpack .../3-python3-lib2to3_3.6.9-1~18.04_all.deb ...
Unpacking python3-lib2to3(3.6.9-1~18.04)...
Selecting previously unselected package python3-distutils.
Preparing to unpack .../4-python3-distutils_3.6.9-1~18.04_all.deb ...
Unpacking python3-distutils(3.6.9-1~18.04)...
Selecting previously unselected package python3.7.
Preparing to unpack .../5-python3.7_3.7.7-1+bionic1_amd64.deb ...
Unpacking python3.7(3.7.7-1+bionic1)...
Processing triggers for mime-support(3.60ubuntu1)...
Processing triggers for desktop-file-utils(0.23-1ubuntu3.18.04.2)...
Setting up libpython3.7-minimal:amd64(3.7.7-1+bionic1)...
Setting up python3.7-minimal(3.7.7-1+bionic1)...
Processing triggers for man-db(2.8.3-2ubuntu0.1)...
Processing triggers for gnome-menus(3.13.3-11ubuntu1.1)...
Setting up python3-lib2to3(3.6.9-1~18.04)...
Setting up python3-distutils(3.6.9-1~18.04)...
Setting up libpython3.7-stdlib:amd64(3.7.7-1+bionic1)...
Setting up python3.7(3.7.7-1+bionic1)...

ここで、pythonが正常にインストールされていることを確認するために、pythonのバージョンを確認できます。

$ python3.7-V
Python 3.7.7

ソースコードからubuntuにPython3.7をインストールします

この方法では、ソースコードからコンパイルして、Ubuntu18.04コンピューターにPython3.7をインストールする方法を学習します。続行する場合は、特定の前提条件が満たされていることを確認する必要があります。まず、ソースコードのコンパイルに必要なビルドツールがコンピューターにインストールされていることを確認する必要があります。

これを行うには、最初にaptのローカルリポジトリインデックスを次のように更新する必要があります。

$ sudo apt update

ローカルリポジトリインデックスの更新に伴い、python3.7のコンパイルとインストールに必要な依存関係をインストールします。これを行うには、次のコマンドを実行する必要があります。

$ sudo apt install -y build-essential wget zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev

すべての依存関係がインストールされて準備ができたら、wgetコマンドを使用して、次のように公式のpythonWebサイトから最新バージョンのPython3.7をダウンロードします。

$ wget https://www.python.org/ftp/python/3.7.7/Python-3.7.7.tgz
- - 2020- 03- 1716:19:44- - https://www.python.org/ftp/python/3.7.7/Python-3.7.7.tgz
Resolving www.python.org(www.python.org)...151.101.8.223, 2a04:4e42:2::223
Connecting to www.python.org(www.python.org)|151.101.8.223|:443... connected.
HTTP request sent, awaiting response...200 OK
Length:23161893(22M)[application/octet-stream]
Saving to: ‘Python-3.7.7.tgz’

Python-3.7.7.tgz    100%[===================>]22.09M  2.50MB/s    in9.2s

2020- 03- 1716:19:54(2.41 MB/s)- ‘Python-3.7.7.tgz’ saved [23161893/23161893]

このチュートリアルを作成する過程で、python3.7のリリースが最新バージョン3.7.7でリリースされました。したがって、tarコマンドを使用してtgzファイルをダウンロードおよび抽出するだけです。

$ tar -xf Python-3.7.7.tgz

tgzファイルからソースコードを抽出した後、ディレクトリにcdし、configureスクリプトを実行して、コンパイルに必要な依存関係が満たされているかどうかを評価します。最適化フラグを有効にして、Pythonバイナリファイルを最適化し、コードの実行を10〜20%増やします。

$ cd Python-3.7.7
$ ./configure --enable-optimizations
checking if the dirent structure of a d_type field... yes
checking for the Linux getrandom() syscall... yes
checking for the getrandom()function... yes
checking for pkg-config... no
checking for openssl/ssl.h in/usr/local/ssl... no
checking for openssl/ssl.h in/usr/lib/ssl... no
checking for openssl/ssl.h in/usr/ssl... no
checking for openssl/ssl.h in/usr/pkg... no
checking for openssl/ssl.h in/usr/local... no
checking for openssl/ssl.h in/usr... yes
checking whether compiling and linking against OpenSSL works... yes
checking for X509_VERIFY_PARAM_set1_host in libssl... yes
checking for--with-ssl-default-suites... python
configure: creating ./config.status
config.status: creating Makefile.pre
config.status: creating Misc/python.pc
config.status: creating Misc/python-config.sh
config.status: creating Modules/ld_so_aix
config.status: creating pyconfig.h
creating Modules/Setup
creating Modules/Setup.local
creating Makefile

configureスクリプトを正常に実行した後、altinstallパラメーターを指定してmakeコマンドを使用して、Ubuntu 18.04LTSコンピューターにpython3.7をインストールします。 altinstallパラメーターは、システムのデフォルトのpythonバージョンとしてインストールされないようにします。

$ sudo make altinstall
changing mode of/usr/local/bin/idle3.7 to 755
changing mode of/usr/local/bin/pyvenv-3.7 to 755
changing mode of/usr/local/bin/pydoc3.7 to 755
changing mode of/usr/local/bin/2to3-3.7 to 755
rm /usr/local/lib/python3.7/lib-dynload/_sysconfigdata_m_linux_x86_64-linux-gnu.py
rm -r /usr/local/lib/python3.7/lib-dynload/__pycache__
Creating directory /usr/local/share/man/man1
/usr/bin/install -c -m 644./Misc/python.man \
 /usr/local/share/man/man1/python3.7.1if test "xupgrade"!="xno"; then \
 case upgrade in \
 upgrade) ensurepip="--altinstall --upgrade";; \
 install|*) ensurepip="--altinstall";; \
 esac; \
 . /python -E -m ensurepip \
 $ensurepip --root=/; \
fi
Looking in links:/tmp/tmp06ih2lq9
Collecting setuptools
Collecting pip
Installing collected packages: setuptools, pip
Successfully installed pip-19.2.3 setuptools-41.2.0

これで、次のようにバージョンを確認することで、python3.7が正常にインストールされたかどうかを確認できます。

$ python3.7-V
Python 3.7.7

結論として

最後に、Ubuntu 18.04LTSコンピューターにpython3.7を正常にインストールしました。このチュートリアルの執筆時点では、Python 3.7の最新バージョンは3.7.7であるため、バージョン3.7.7をこのリリースの最新バージョンに置き換えることをお勧めします。これで、3.7用に記述されたpythonスクリプトとコードを簡単に実行できます。

Recommended Posts

Ubuntu 18.04LTSにPython3.7をインストールします
Ubuntu14.04にPython3をインストールします
Ubuntu16.04にPython3をインストールします
UbuntuにPython3.7をインストールする
ubuntu18.04インストールpython2
ubuntu12.04インストールpython3
ubuntu18.04インストールpython
Ubuntu18.04にPython3.8をインストールする方法
Ubuntu18.04にPython仮想環境をインストールします
UbuntuにTensorFlow(python2.7バージョン)をインストールします
Ubuntuに最新のPython3.6バージョンをインストールします
ubuntu18にvscodeをインストールします
UbuntuにRedisをインストールする
ubuntu20にR4をインストールします
Ubuntu18.04にnvtopをインストールします
Ubuntu18.04にpostgresql-10をインストールします
Ubuntu16.04にpython3.6をインストールします
Ubuntuにdockerをインストールする
ubuntu18.04にDockerをインストールします
Ubuntu16にnodejs10をインストールします
Ubuntu14.04にmysqlをインストールします
UbuntuにDjangoをインストールします
Ubuntu16.04にPytorch + CUDAをインストールします
Ubuntu18にrJavaをインストールします
UbuntuにJDK10 +をインストールする
Ubuntuにpythonをインストールする
Ubuntu20.04 ubuntu / focal64にPython2をインストールする方法
Ubuntu16.04.2にKDEをインストールします
python3を使用してubuntuに3番目をインストールします
Ubuntu18にDockerをインストールする
Ubuntuにflashplayerをインストールする
[練習] Ubuntuシステムにpython3.6をインストールする方法
Dockerプラクティス(1):Ubuntu16.04にDockerをインストールします
仮想マシンにubuntuをインストールします
Ubuntu Server14.04にOpenSSL1.0.2をインストールします
Ubuntu16.04にQQロボットをインストールします
Ubuntuは最新のPython3をインストールします。
ubuntu18.04python3.8をコンパイルしてインストールします
UbuntuにAndroidStudioをインストールする
python3をlinuxにインストールし、python2を保持します
ubuntuにスクレイプフレームワークをインストールする
MysqlをUbuntuにオフラインでインストールする
UbuntuにOracleJava8をインストールする
Ubuntu16.04にOdoo11スタックをインストールします
Ubuntu16にGoロケールをインストールします
Ubuntu16.04に一般的なソフトウェアをインストールする
ポータブルでないQQをubuntuにインストールする
オフラインでUbuntu18.04にDockerをインストールする
Ubuntu20.04にRubyをインストールする方法
Ubuntu20.04にMemcachedをインストールする方法
Ubuntu20.04にJavaをインストールする方法
Ubuntu20.04にMySQLをインストールする方法
Ubuntu20.04にVirtualBoxをインストールする方法
Ubuntu20.04にElasticsearchをインストールする方法
UbuntuにProtobuf3をインストールするための詳細なチュートリアル
UbuntuにTendau12ドライバーをインストールします
Ubuntu20.04にApacheをインストールする方法
Ubuntu20.04にGitをインストールする方法
Ubuntu16.04にNode.jsをインストールする方法
Ubuntu20.04にMySQLをインストールする方法
UbuntuにMySQLをインストールして構成する