2010年2月22日月曜日

初MacでGoogle App Engine

最近、MacBookを購入。
初めてのMac。

・・・やばいw
この美しさは、もうWindowsに戻れなくなりそうなくらい感激したw

梅田望夫さんの著書に「ウェブ時代5つの定理」というものがあり、文庫化されるということで読み返してみていたら、次の金言に遭遇。


Eve's was the first apple to provide man a taste of knowledge and thereby alter forever his relation to the world; Newton's was the second; and now, (・・・) Apple Incorporated has placed on our desks a third: the personal computer. A cultural revolution is in its consequence, —Jean-Louis Gassee

エデンの園でイヴがかじったリンゴは、人類に「知の味」を教え、人類と世界の関係を決定的に変えてしまった。
これが第一のリンゴ。
二つ目がニュートンのリンゴ。
そして今アップルは、第三のリンゴ、すなわちパーソナル・コンピュータを、私たちの机の上に置いたのである。
それによって、文化の改革が起こる。—ジャン=ルイ・ガセー



この言葉の意味を初めて真に理解した瞬間だと悟ったw

Macは何かクリエイター魂というものを芽生えさせてくれるものがあると感じた。



さてさて、話は変わりMacBookを買い少しいじったところで、Google App Engineの開発環境を整えてみようと思い、Google App Engineをインストールした。

しかし。。。なぜか上手く動かない。。。


MacではUNIX系の環境を整えるときXcodeが必要だということだけど、Mac買って一番最初に入れたのが、iPhone SDKだったので流れで既にインストール済み。。。


で、調べてみるとどうやら標準で入っていたpythonのバージョンが関係してるみたいなので、
python2.5系をインストールすることに(標準で入ってたのはpython2.6系)。


snow Leopardにpython2.5系をインストールするにはMacportsというものを使うらしいので、Macportsを入れる。
ここの上の方にある「Snow Leopard」とリンクになっているところをクリックして、Macportsを落としてくる。

インストールが終わったら、なにか一応アップデートというものをする必要があるらしいので
ターミナルを開いて
$ sudo port selfupdate
$ sudo port sync

を実行。

終わったら、python2.5系と標準で入ってたpython2.6系を変更するソフトをmacportsでインストールするため、またターミナルで下記を実行。

$ sudo port install python25 python_sellect

(インストールが完了するまでに30分近くかかった気がする。。。長いw)

完了したら、pythonのバージョンを変更してみる。
変更する前にとりあえずターミナルに
python
と入れて実行すると、現行のpythonのバージョンが確認できるのでバージョンの確認。
python2.6だと確認したところで「control + D」でpythonを抜け、下記を実行。

$ sudo python_select python25

成功すると「Selecting version "python25" for python」と表示されるので、
また「python」とやると今度はpython2.5系が動いているのが確認できたのでO.K

Google App Engine
からSDK for pythonのMac版をDLし(今回は事前に落としていたけどw)
App Engineのランチャーをアプリケーションフォルダにコピーして実行。

今度はすんなりと、起動してくれたーww


なんだかんだでMacになれるまでに時間はかかりそうなものの、とにかく触ってるだけで何か作りたい衝動に駆られるのはすごいなーとまぢで実感w


すばらしいw



今回の参考サイト:
http://c.fc2.com/m.php?_mfc2u=http%3A%2F%2Fitfun.jp%2F2009%2F11%2Fsnow-leopardgoogle-app-enginepython.html

Xcode for Mac

The MacPorts Projects


python2.5系DL



GAE DL