2009/11/07

Snow LeopardでGoogle App Engine/Pythonを使う方法

screenshot by wonderlanddalicejp.

MacBook Proを買って早くも2ヶ月。
実は一番最初にインストールしたソフトはGoogle App Engine SDKでした。
そして今日やっと、やっと起動に成功!

 

Mac OS X 10.6には標準でPython 2.6の環境がインストールされているのですが、Google App EngineのSDKで必要になるのはPython 2.5の環境。
Windowsの場合は標準だと”変なもの”が入っていないので、そういう点では素晴らしい;p

Snow LeopardにPython 2.5の環境をインストールするにはMacPortsというものを使うと楽らしい。
実際にこれでインストールしたのですが、なんだかいまいち分からん。
このMacPortsを使うためにはXcodeをインストールしておく必要があるそうですので、インストールディスクからXcodeを入れておいてください。

MacPortsはこちらから。The MacPorts Project -- Download & Installation
SnowLeopardの文字がリンクになっているのでそちらをクリックするとSnowLeopard用のdmgファイルがダウンロード出来ます。

インストールが完了すると一応アップデートとか言う儀式をこなす。

$ sudo port selfupdate
$ sudo port sync

その後PythonとPythonのデフォルトバージョンを変更するソフトをport経由でインストールします。

$ sudo port install python25 python_sellect

時間が結構かかるのでまったり待ちましょう。
インストールが完了すると実際に切り替えてみます。

その前に、ターミナルでPythonを起動してみて起動するPythonのバージョンを確認してみてください。 バージョン切り替えは

$ sudo python_select python25

これを実行したら「Selecting version "python25" for python」と表示されると思います。
後にもう一回ターミナルでPythonを実行すれば標準で起動するのがPython 2.5.4が起動するようになります。

 

ここで、Google App Engine SDKを起動して実行するとエラーが減ってうまくいくかと。
それでも、エラーがでたあなた。自分の事です。

実はGoogle App Engineのプロジェクト名は小文字じゃないとだめです。
なので“Hello”とかいう プロジェクト名をつけると

Fatal error when loading application configuration:

というエラーがapp.yamlで発生します。
文字コード関連なので、他の原因としては文字コードや日本語文字が含まれていることがあるそうですが、一番単純なのは、プロジェクト名に大文字を含めていること。

なので“hello”というプロジェクト名をつけると、上の画像のようにちゃんと実行できました:-)

 

Google App EngineがPython 2.6に対応していればこんなにめんどくさい形にならなくてすんだのに・・・

 

via SnowLeopardでGAE(Python 2.5)開発環境をつくるまでを走り書き - matuダイアリー