最新バージョンのPython2とPython3をCentOS6とCentOS7にインストールする方法についてのクイックガイドを作成しました。現在、Python2.7.13とPython3.6.0を対象としています。
# Start by making sure your system is up-to-date:
yum update
# Compilers and related tools:
yum groupinstall -y "development tools"
# Libraries needed during compilation to enable all features of Python:
yum install -y zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel expat-devel
# If you are on a clean "minimal" install of CentOS you also need the wget tool:
yum install -y wget
次の手順は、インストールするPythonのバージョンによって異なります。
Python 2.7.14の場合:
wget http://python.org/ftp/python/2.7.14/Python-2.7.14.tar.xz
tar xf Python-2.7.14.tar.xz
cd Python-2.7.14
./configure --prefix=/usr/local --enable-unicode=ucs4 --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
make && make altinstall
# Strip the Python 2.7 binary:
strip /usr/local/lib/libpython2.7.so.1.0
Python 3.6.3の場合:
wget http://python.org/ftp/python/3.6.3/Python-3.6.3.tar.xz
tar xf Python-3.6.3.tar.xz
cd Python-3.6.3
./configure --prefix=/usr/local --enable-shared LDFLAGS="-Wl,-rpath /usr/local/lib"
make && make altinstall
# Strip the Python 3.6 binary:
strip /usr/local/lib/libpython3.6m.so.1.0
Pipをインストールするには:
# First get the script:
wget https://bootstrap.pypa.io/get-pip.py
# Then execute it using Python 2.7 and/or Python 3.6:
python2.7 get-pip.py
python3.6 get-pip.py
# With pip installed you can now do things like this:
pip2.7 install [packagename]
pip2.7 install --upgrade [packagename]
pip2.7 uninstall [packagename]
Pythonのシステムバージョンを変更することは想定されていません。これは、システムが破損するためです(ご存知のとおり)。元のシステムバージョンをそのままにしておく限り、他のバージョンのインストールは正常に機能します。/usr/local
これは、configureを実行するときにカスタムプレフィックス(たとえば)を使用し、Pythonのビルドをインストールするときにmake altinstall
(通常の代わりに)を使用することで実現できます。make install
Pythonの複数のバージョンを利用できるようにすることは、バージョン番号を含むフルネーム(たとえば、「python2.7」または「pip2.7」)を入力することを覚えている限り、通常は大きな問題ではありません。すべてのPython作業をvirtualenvから行う場合は、バージョン管理が自動的に処理されるため、virtualenvをインストールして使用するようにしてください。