hibitekitou
Python環境の構築メモ
mac |2016-03-29
いや、OS標準の環境でやればいいんだけどね。El Capitanになってちょっと不便になったんで※。
UNIX系のソフトウェアを管理するパッケージマネージャとして最近はHomebrewが主流なんでしょうか。というわけで、これを導入します。ワンラインのスクリプトをターミナルにコピペでインストールとはなかなかに手軽ですね。
インストールが終わったら、何か問題がないか brew doctor コマンドを実行してみますと
Your XQuartz (2.7.7) is outdated(てめーのXQuartzは時代遅れだ) だから最新を落として入れろとか、まさにPythonについての問題が指摘されたりとか(/LibraryにOS標準のPythonは入っているからHomebrewから利用できない※とか)、/usr/local/includeにあるもんが問題起こす可能性があるから削除した方がいいよとか言われました。まさに新規にPythonを入れるためにHomebrewをいじるので、これらメッセージはおおむね問題はないですね。
というわけでインストールします。一応
brew update
を走らせてパッケージ一覧を更新しておいて
brew install python
でインストールです。これで /usr/local/bin/python にPythonが入りました。ついでにPython3も入れちゃいます。
brew install python3
インストールしようとしているソフトの情報を得ようと思ったら brew info [ソフト名] だそうです。
便利なライブラリ、pipを入れます。
sudo easy_install pip
んで、virtualenvを入れます。virtualenvはPythonの仮想環境を作るためのライブラリだそうです。プロジェクトごとに仮想環境を構築してライブラリの依存関係がごちゃごちゃになることを防ぐ目的のようですね。
sudo pip install virtualenv virtualenvwrapper
virtualenvwrapperを入れることで各環境の切り替えを簡単になるそうです。
ちなみに、easy_installで入るpipのバージョンがちょい古いようで、
You are using pip version 8.0.2, however version 8.1.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
とか言われました。んで、アップグレードしています。
virtualenvが作成する環境が入る場所を作ります。
mkdir ~/.virtualenvs
で、ログインシェル(.bashrc)に以下を記述です。参考(Virtualenvwrapperの導入)
if [ -f /usr/local/bin/virtualenvwrapper.sh ]; then
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
fi
一応、.bash_profileに以下の記述があるかも確認しときます。
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
同じターミナルのシェル上で作業を続行するなら source .bash_profile を実行しときます。
以上で環境を作成する準備が出来たので、仮想環境作成を行っていきます。env0 という名前の環境を作ります。
mkvirtualenv --python=/usr/local/bin/python env0
Python 3の環境を作りたかったら、pythonのパスをpython3のパスにしてやればいいです(/usr/local/bin/python3)。環境作成が成功するとその環境に入ってます(プロンプトが (env0) XXX:xxx$ になってる)。環境から出るときは
deactivate
を実行です。環境に入るときは workon 環境名 なので
workon env0
となります。 workon ってコマンドは単独で使うと作成された環境の一覧を表示するそうです。
環境を削除する場合は、環境から出た上で rmvirtualenv 環境名 ですね。
rmvirtualenv env0
これで削除されます。
というわけで作成したenv0の中にモジュールをインストールしていきます。
(env0)$: pip install pyproj
(env0)$: pip install pyshp
まぁつまり仮想環境内で環境構築作業をしていけばいいってことですね。
以上、普通の人は他のページを参考にしたほうがいいけど、個人的なメモでした。
※
El Capitanから導入されたSystem Integrity Protection (SIP)(通称 Rootless)のせいでございます。これ自体はいいことなんでしょうけど、困ったことも起こるわけです。
UNIX系のソフトウェアを管理するパッケージマネージャとして最近はHomebrewが主流なんでしょうか。というわけで、これを導入します。ワンラインのスクリプトをターミナルにコピペでインストールとはなかなかに手軽ですね。
インストールが終わったら、何か問題がないか brew doctor コマンドを実行してみますと
Your XQuartz (2.7.7) is outdated(てめーのXQuartzは時代遅れだ) だから最新を落として入れろとか、まさにPythonについての問題が指摘されたりとか(/LibraryにOS標準のPythonは入っているからHomebrewから利用できない※とか)、/usr/local/includeにあるもんが問題起こす可能性があるから削除した方がいいよとか言われました。まさに新規にPythonを入れるためにHomebrewをいじるので、これらメッセージはおおむね問題はないですね。
というわけでインストールします。一応
brew update
を走らせてパッケージ一覧を更新しておいて
brew install python
でインストールです。これで /usr/local/bin/python にPythonが入りました。ついでにPython3も入れちゃいます。
brew install python3
インストールしようとしているソフトの情報を得ようと思ったら brew info [ソフト名] だそうです。
便利なライブラリ、pipを入れます。
sudo easy_install pip
んで、virtualenvを入れます。virtualenvはPythonの仮想環境を作るためのライブラリだそうです。プロジェクトごとに仮想環境を構築してライブラリの依存関係がごちゃごちゃになることを防ぐ目的のようですね。
sudo pip install virtualenv virtualenvwrapper
virtualenvwrapperを入れることで各環境の切り替えを簡単になるそうです。
ちなみに、easy_installで入るpipのバージョンがちょい古いようで、
You are using pip version 8.0.2, however version 8.1.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
とか言われました。んで、アップグレードしています。
virtualenvが作成する環境が入る場所を作ります。
mkdir ~/.virtualenvs
で、ログインシェル(.bashrc)に以下を記述です。参考(Virtualenvwrapperの導入)
if [ -f /usr/local/bin/virtualenvwrapper.sh ]; then
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
fi
一応、.bash_profileに以下の記述があるかも確認しときます。
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
同じターミナルのシェル上で作業を続行するなら source .bash_profile を実行しときます。
以上で環境を作成する準備が出来たので、仮想環境作成を行っていきます。env0 という名前の環境を作ります。
mkvirtualenv --python=/usr/local/bin/python env0
Python 3の環境を作りたかったら、pythonのパスをpython3のパスにしてやればいいです(/usr/local/bin/python3)。環境作成が成功するとその環境に入ってます(プロンプトが (env0) XXX:xxx$ になってる)。環境から出るときは
deactivate
を実行です。環境に入るときは workon 環境名 なので
workon env0
となります。 workon ってコマンドは単独で使うと作成された環境の一覧を表示するそうです。
環境を削除する場合は、環境から出た上で rmvirtualenv 環境名 ですね。
rmvirtualenv env0
これで削除されます。
というわけで作成したenv0の中にモジュールをインストールしていきます。
(env0)$: pip install pyproj
(env0)$: pip install pyshp
まぁつまり仮想環境内で環境構築作業をしていけばいいってことですね。
以上、普通の人は他のページを参考にしたほうがいいけど、個人的なメモでした。
※
El Capitanから導入されたSystem Integrity Protection (SIP)(通称 Rootless)のせいでございます。これ自体はいいことなんでしょうけど、困ったことも起こるわけです。
コメント ( 0 )|Trackback ( )
・