express の examples

node の express を git clone して examples を動かそうとしてもどうもエラーになる
色々試しているうちに動いた

ログをとってなかったので、とりあえず記憶を頼りに(ならないけど)
覚えてる範囲でメモ

動かなかった原因は node と express のバージョン不一致

インストールしていた node のバージョンが v0.5 系 で
express が v3.x 系(?かな) の組み合わせはだめだったから

これを node はバージョンが v0.4 系
express は v2.x 系にすることでエラーが解消した

前提として
OS: CentOS 5.7 (64bit)
node が /root/ 下に git clone してある
express が /home/mitsuaki/ 下に git clone してある

まず node のソースを git clone した ディレクトリにいって

[root@localhost ~]# git checkout v0.4.12

多分、↓ でもよかったはずだと思う

[root@localhost ~]# git checkout v0.4

master じゃなないところに "*"があればOKだと思う

[root@localhost node]# git branch
* (no branch)
master

そしたら、 ./configure → make → make install でうまく行くと ↓ のように

[root@localhost node]# node --version
v0.4.12

https://github.com/joyent/node/wiki/Installation Step4 に従い npm も入れなおす

[root@localhost node]# curl http://npmjs.org/install.sh | sh

次に express を git clone した ディレクトリにいって

[mitsuaki@localhost express]$ git branch master 2.x

さらに

[mitsuaki@localhost express]$ npm install -d

ガリガリとインストールが始まって、うまく行くと ↓ のように

[mitsuaki@localhost express]$ express --version
2.5.0

examples を動かし http://localhost:3000/ をリクエストすると

[mitsuaki@localhost express]$ node examples/jade/app.js
Express app started on port 3000
GET / 200 82ms
GET /stylesheets/style.css 304 7ms