OSXでのpythonのバージョン切り替え(eclipseでも)

いま使っているOSX上には複数のバージョンのpythonが入りうるのですが、その切替をできるようにしました。GAE開発用には2.5系、それ以外のときは最新環境として2.7系を使いたいので。ただし、ちょっと前にやったことなので不完全かもしれませんが…。

いくつかのブログを見たところ、「python_selectを使え」的な記述をよく見かけますが、どうやらこれは古い情報のようで、「python_selectは死んだ」なんて記事もありました。どうやらMacPortsの仕様変更とのこと。

なので、まずはMacPorts自体をアップデート。

sudo port selfupdate
sudo port sync

で、現在切り替えられるpythonを確認するために

 port select --list python 

とすると、

Available versions for python: 
none 
python25 
python25-apple 
python26-apple 
python27-apple (active) 

なような表示がでてきます。現在activeなのは2.7、ということですね。バージョンを切り替えるには、

sudo port select --set python python25

で切り替わります。

Available versions for python: 
none 
python25 (active) 
python25-apple 
python26-apple 
python27-apple 

これで出来ました。

また、ライブラリを読み込みeasy_installも、おそらくコマンド実行時にactiveなバージョンのpythonでのみ使えるようにインストールされるものと思われます。easy_installでインストールすると、 /Library/Python/(バージョン)/site-packages/ 配下に格納されるようです。

eclipseでも切り替えらえるように

GAEの開発にはeclipseを使っていますが、python2.7系を使う時にもeclipseが使えると便利ですよね。

それには、Preferences の画面から PyDev の Interpreter – Python を開きます。すると、現在使えるように設定されているバージョン(のインタプリタ=実行ファイル)が表示されますので、ここに利用したいバージョンのpythonの実行ファイル(port select で切り替えておいて which pythonで所在はわかりますね)を Add してやると、該当するライブラリをPYTHONPATHとして読み込んでくれます。便利!

そして、該当プロジェクトの Properties の画面から PyDev – Interpreter/Grammar を開きます。そこで、Interpreter の欄に先程設定したものを指定すると、そのバージョンのpythonで実行してくれる、というわけですね。一応、Grammar Versionもあわせておいたほうがいいでしょう。

これで、コマンドラインからeasy_installしたライブラリをeclipseでも使えるようにもなりました。

とりあえずこれで切り替わってるように思えますが、もし間違ってたり「もっとこうしたほうがいいよ」ということがありましたらコメントしてもらえると助かります。

広告

OSXでのpythonのバージョン切り替え(eclipseでも)” への1件のフィードバック

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中