CentOS6でPython2.7.11とPython3.5.1を使える環境構築
目次
Webチームの後藤です。
CentOS6にはデフォルトでPython2.6 が入っていますが、使用したいパッケージが対応していないとか、
単純に新しいのを使ってみたいとかで別バージョンを入れたくなります。
しかし、yumとかfirewalldとかPythonで書かれているソフトウェアもあるので、
よく知らないでバージョンアップするのも怖いですね。
そこで、 virtualenv を使用して2系の最新版 2.7.11 と 3系 の最新版 3.5.1の2つを使える環境を作る手順を書き記します。
(※2016年2月現在の最新版)
ちなみにvirtualenvって?
virtualenv とはPythonの仮想環境を構築することのできるツールです。
違うバージョンは勿論、同じバージョンで違うパッケージをインストールした別々の環境を用意することもできます。
pipを利用してインストールすることができます。
ところでpipって?
Pythonのサードパーティ製パッケージをインストールするのに使用するコマンドです。
Python3.4とPython2.7.9以降であれば、Pythonインストール時に同時にインストールされますが、
CentOS6の標準のPythonは2.6なので、まずはpipをインストールしないといけません。
手順1. pip インストール
$ yum groupinstal "Development Tools" #pipインストールに必要 $ yum install zlib-devel openssl-devel #pipインストールに必要 $ wget http://bootstrap.pypa.io/get-pip.py $ ./get-pip.py
これでpipがインストールできました。
$ pip list
とか打ってみて、現在Pythonに入っているパッケージが表示されたりしたら大丈夫です。
手順2. virtualenv インストール
$ pip install virtualenv
これだけです。pip便利。
#How to use $ virtualenv 環境名 #カレントディレクトリに環境作成 $ source 環境名/bin/activate #virtualenv環境の有効化 $ deactivate #virtualenv環境の無効化
こんな感じに使えるようになります。使えるようになりますが、もちょっと簡単にするために、virtualenvwrapperをインストールします。
virtualenvwrapperを入れることで、virtualenv環境の切り替えをシンプルにできます。
手順3. virtualenvwrapper インストールと設定
$ pip instal virtualenvwrapper
~/.bashrc に下記を記述します。
export PROJECT_HOME=/path/to/project/home export WORKON_HOME=/path/to/work on/home source`whichvirtualenvwrapper.sh`
これでvirtualenvwrapper が使えるようになりました。
あとはこれを使用して環境を作るだけです。Python達をインストールしましょう。
手順4.Python2.7.11 , Python3.5.1 インストール
2.7.1 のインストール
$ cd /opt $ curl -O https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tgz $ tar zxf Python-2.7.11.tgz $ cd Python-2.7.11 $ ./configure --prefix=/opt/python2.7.11 $ make $ altimake nstall
3.5.1のインストール
$ cd /opt $ curl -O https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz $ tar zxf Python-3.5.1.tgz $ cd Python-3.5.1 $ ./configure --prefix=/opt/python5.3.1 $ make $ make altinstall
手順5. 環境を作成しよう
$ mkvirtualenv --python <使用するPythonのパス> <環境名>
で作成できるのでこんな感じで作成します。
$ mkvirtualenv --python /opt/python2.7.11/bin/python2.7 env_27 $ mkvirtualenv --python /opt/python3.5.1/bin/python3.5 env_35
以上で環境構築は完了です。
あとは使い方ですが、以下のように打つとプロンプトの前に環境名が付きます。
#Python2.7の場合 $ work on env_27 #Python3.5の場合 $ work on env_35
#Python2.7の場合 (env_27)$ #Python3.5の場合 (env_35)$
例えばenv_27の状態でpythonコマンドをたたくと python2.7.11 が起動しますし、
env_27の状態で「pip install」すると、env_27環境のみパッケージがインストールされます。
あとよく使うコマンドとしてはこんな感じですかね。
$ workon #環境一覧 $ workon 環境名 #環境の実行 $ deactivate #環境の停止 $ rmvirtualenv 環境名 #環境の削除
これで色々試したい放題になりますね! enjoy coding!