【Python】CentOS上でpython3.10.xを利用する場合の手順

カテゴリ:Python 投稿:2022年6月1日1:17、更新:2022年6月11日23:27

・記事の概要 

CentOS上でpython3.10.x(最新版)をインストールし利用する場合の手順を記載します。


・この記事の対象 

CentOS上でpython3.10.xをインストールし利用したい方。

CentOS上でpython3.10.xを動かそうにもエラーが出て躓いている方。


・この記事でできるようになること 

CentOS上でpython3.10.xをインストールし、正常に利用できるようになります。

いくつかの躓きポイントもあるので、この手順で進めて頂くことで円滑に環境の構築ができます。


・実際の手順 

①必要となるパッケージを事前インストール

CentOS上でpython3.10.xを動作させるために必要となるものを最初にインストールしておきます。

sudo yum groupinstall "Development Tools" —setopt=group_package_types=mandatory,default,optional


sudo yum install bzip2-devel gdbm-devel libffi-devel libuuid-devel ncurses-devel openssl-devel readline-devel sqlite-devel xz-devel zlib-devel tk-devel


sudo yum install openssl11 openssl11-devel


②最新のPythonファイルをダウンロード

以下より最新のバージョンを確認し

https://www.python.org/downloads/

wgetコマンドで最新バージョンをダウンロードします。

sudo wget https://www.python.org/ftp/python/3.10.x/Python-3.10.x.tgz

ダウンロードしたものを解凍し、同DIRに移動します。

tar xvf Python-3.10.x.tgz


cd Python-3.10.x


③opensslの対応 ※CentOS7の場合

以下をコマンド実行します。

export CFLAGS=$(pkg-config --cflags openssl11)

export LDFLAGS=$(pkg-config --libs openssl11)

補足:

Pythonではhttps通信時などのOpenSSLを利用するのですが、CentOS7の場合はデフォルトではこのバージョンが1.0.21で、Python3.10系以降ではOpenSSLのバージョン1.1.1以降が必要になります。

なのでCentOS7の場合は、①の「sudo yum install openssl11 openssl11-devel」と、この③の対応が必要になります。


④Pythonをインストール

以下をコマンド実行しPythonインストールとビルドし、最後にバージョンの確認をします。

./configure --enable-optimizations

sudo make altinstall


python3.10 --version


・まとめ 

いかがだったでしょうか。

CentOS7だと、openssl周りの対応が抜けていることでのエラー発生があり得ますので、その点に注意しつつ上記のように対応ください。

またCentOS7でSQLiteバージョンのエラーが生じた場合などは以下も参照してみてください。

SQLiteのバージョンが古いとエラーが出てしまう場合の対応


コメント一覧

コメント投稿ページへ


書いている人

のぎ
PG->SE->PMとして働き、現在はIT企業で新卒採用の担当をしています。長期育休取得明けで0歳娘の対応に毎日バタバタです。笑
採用業務をしつつ社内利用ツールなど作成しており、当ブログも勉強の一環でコーディングして作成しています。 エンジニア領域、人事・採用領域、育児関連など発信していきます。