Python

CORESERVER V2 に Python をインストール

CORESERVER V2 には始めから Python がインストールされていますが、バージョンが 3.8 と古いので、現在最新のバージョン 3.10 をインストールしてみます。

インストール環境の作成

CORESERVER V2 はレンタルサーバーなので、当然スーパーユーザーでインストールできないので、ユーザーのホームディレクトリーにインストールしていきます。

まずは、ユーザーのホームディレクトリーにインストール先の .local ディレクトリーを作成します。

$ mkdir .local

次にソースコードを入れるディレクトリーを作成します。

$ mkdir .local/tmp

libffi のインストール

libffi がない状態で Python をインストールできますが、使用するライブラリによって次のエラーが発生する場合があります。

ModuleNotFoundError: No module named '_ctypes'

そのため、Python をインストールする前に libffi をインストールします。

$ cd ~/.local/tmp
$ wget https://github.com/libffi/libffi/releases/download/v*.*.*/libffi-*.*.*.tar.gz
$ tar xvf libffi-*.*.*.tar.gz
$ cd libffi-*.*.*
$ ./configure --prefix=$HOME/.local
$ make
$ make install

ソースコードのダウンロード

まずは、Python の公式サイトから圧縮されたソースコードのファイルをダウンロードして展開します。

$ cd ~/.local/tmp
$ wget https://www.python.org/ftp/python/3.10.*/Python-3.10.*.tgz
$ tar xzvf Python-3.10.*.tgz

ビルドとインストール

展開したファイルのディレクトリーに移動して、ビルドします。このとき、prefix オプションで先ほど作成した .local ディレクトリーを指定します。また、先ほどインストールした libffi を読み込むため LDFLAGS を指定します。

$ cd Python-3.10.*
$ ./configure --prefix=$HOME/.local --enable-optimizations LDFLAGS="-L$HOME/.local/lib64 -Wl,--rpath=$HOME/.local/lib64"
$ make
$ make install

確認とシンボリックリンク

インストールが完了すると .local/bin の中に python3.10 という実行ファイルができているので、次のコマンドで確認してみます。”Python 3.10.*” と表示されれば完了です。

$ python3.10 -V
Python 3.10.*

次に、python コマンドで python3.10 が実行されるようにシンボリックリンクを作ります。

$ cd ~/.local/bin
$ ln -s python3.10 python

シンボリックリンクが正しく作成されていることを確認します。 同様に “Python 3.10.0” と表示されれば完了です。

$ python -V
Python 3.10.*