by @nyarla

Google App Engine開発環境用にPython 2.5.5環境を整える

概要: Cygwin に Python2.5.5 環境を整える


ここのところ Google App Engine 用の Application を開発(とか良いながらぜんぜん進んでないけど><) してるわけですが、この間 Cygwin のsetup.exeを起動して云々してたら、Python が 2.6.5 になったりで、 開発環境がどうも不安定なので、今後面倒なことにならないためにも、 Google App Engine 用の Python 環境を整えることに。

0. Cygwin の Python をインストール

とりあえず後々使うvirtualenvとか、mercurialのために、Cygwin の Python をインストール。

手順としては、

  1. setup.exeを起動
  2. パッケージリストからpythonを選択
  3. セットアップを実行

という感じ。

1. Python2.5.5 のインストール

んで、次に Google App Engine 用の Python をインストール。

Google App Engine は Python 2.5 系を要求するので、 今回は 2.5 系の最新版である 2.5.5 をインストールします。

で、あとは端末で、

$ cd ~/tmp
$ wget http://www.python.org/ftp/python/2.5.5/Python-2.5.5.tgz
$ tar zxvf Python-2.5.tgz
$ cd Python-2.5.5
$ ./configure --prefix=/usr/local/python2.5.5
$ mame
$ make install

という感じでインストールしました。

3. virtualenvをインストール

んで次にvirtualenvをインストールします。

もしかするとシステムにvirtualenvをインスコしないほうがいいのかも知れませんが、 めんどくさかったので、

$ pip install virtualenv

としてvirtualenvをインストールしました。

まあ、pip がインストールされてない環境ではeasy_installを使うとよろしいかも知れません。

4. virtualenvで Google App Engine 用環境を作成

これで役者はそろったので、いよいよ Google App Engine 用の仮想環境を作成していきます。

んで、端末で、

$ virtualenv --python=/usr/local/python2.5.5/bin/python2.5 /home/nyarla/local/gae

とすると、インストールが実行される……と思いきやなんかリンクしたライブラリが見つからないとかいわれてエラー。

で、エラーメッセージがいまいち意味不明だったので、試しに~/local/gae/binに生成されたpython.exeを実行してみると、 どうもlibpython2.5.dllが見つからないというエラーが。

んで、このメッセージを見て、これはどうも実行ファイルがあるディレクトリにパスが通ってないせいっぽかったので、 今度は、

$ export PATH=/usr/local/python2.5.5/bin:${PATH}
$ virtualenv --python=/usr/local/python2.5.5/bin/python2.5 /home/nyarla/local/gae

としてパスを通してから実行、すると今度はうまくいきました。

んで、この作業をした後、シェルの設定ファイルに、

export PATH=${PATH}:/usr/local/python2.5.5/bin

と記述して、恒久的にパスを通すようにしました。

5. virtualenvを使う

で、これでも完全に作業は終わったので、Google App Engine 用の仮想環境を使うには、

$ source ~/local/gae/bin/activate

とすれば OK という状態になりました。

6. 感想

とりあえず詰まった所としては Python2.5.5 にパス通してなくてvirtualenvを実行しても先に進まなかったことぐらいですが、 それ以外はすんなりと実行できました。

まあこれで Google App Engine 用の Python2.5.5 環境が整ったので、 あとはモリモリと開発していくだけです。

で、Google App Engine 用 Application ですが、最初は framework を使わずにやってたんですが、 途中でめんどくさくてやってられねーとなって、 kay framework を使ってたんですが、なんか遅いような気がする上に、作法がなんとなくなじまなかったので、 Pylons を使ってみようかと考えている次第。まあこれから試してみっかって感じですが。

というわけで以上virtualenvと Python2.5.5 で Google App Engine 用仮想環境を作るという話でした。

#FIXME