node.jsとnpmのインストール


このエントリの記述は既に古いです。最新のインストール方法は下記のエントリを参照してください。
http://d.hatena.ne.jp/t_43z/20110503/1304421488


このエントリはリアルタイムWebハッカソンのハンズオン資料その1です。

Linux

普通に入れる

後述のnaveを使う方がいいと思う。っていうかnpmのインストール方法をどうしたいかによってnode.js本体のインストール方法が変わる。なので(naveを使わないにしても)最後まで読んでからやることを推奨。
普通にやるとこんな感じ。

$ sudo apt-get install build-essential libssl-dev curl
$ mkdir tmp
$ cd tmp
$ wget http://nodejs.org/dist/node-v0.2.3.tar.gz
$ tar -xvzf node-v0.2.3.tar.gz
$ cd node-v0.2.3
$ ./configure
$ make
$ sudo make install

必要なパッケージはもちろん環境によって違う。上記はUbuntu10.04の初期状態の場合。make testをする場合には、さらにapache2-utilsをinstallしておく必要がある。
npmは作者が推奨しているやり方が3通り、推奨していないやり方(sudoで実行しちゃう方法)が1通りある。
1. /usr/local以下をrootではなく自分のものにしてしまう方法。自分しか触らないマシンならいいんじゃねって話。

$ sudo chown -R $USER /usr/local
node本体をインストール
$ curl http://npmjs.org/install.sh | sh

一行目をnode本体のインストール前にやり、node本体のインストールの最後のsudoは付けない。

2. node本体を$HOME/local以下にインストールしておく方法
上述のnodeのインストールで./configureに--prefix=~/localのオプションを指定してやる。そうやってnode本体をインストールした後に

$ curl http://npmjs.org/install.sh | sh

を実行すればいい。

3. npmのインストール先を指定しておく方法
node本体は上述の方法でインストールしておく。

まず設定
$ cat >>~/.npmrc <

naveを使う

naveっていうのは、複数バージョンのnode.js環境を切り替えて使うためのツール。RubyのrvmとかPythonのvirtualenv的なもの。同じ趣旨のものにnvmもあるが、naveはnpmの作者自らが作っているのでその安心感がある。

$ sudo apt-get install build-essential libssl-dev git-core
$ mkdir work
$ cd work
$ git clone http://github.com/isaacs/nave.git
$ cd nave
$ ./nave.sh install latest

でnode本体のインストールが完了。

$ ./nave.sh use latest
$ curl http://npmjs.org/install.sh | sh

でnpmのインストールが完了。これでいれるとnode.js本体は$HOME/work/nave/installed/0.2.3以下に、npmは$HOME/work/nave/installed/0.2.3/lib/node/npmに入っている。
use をしないとnodeにパスが通らないので、

$HOME/work/nave/nave.sh use latest

を.bash_profileとかに入れとくといい。
追記) オフライン状態でnave.sh use latestすると、nave/installed以下が全て削除される現象(バグ?)が発生するようです。なので、ローカルのマシンだと.bash_profileに入れるのは危険かもしれません。

Windows

CygwinにしろVirtualBoxにしろ、環境ができたら上記のLinuxと同じ手順。素で入れるよりnave使う方がいいってのも同じ。

Cygwin嫌いな方は

VirtualBoxとかでUbuntu等を入れるのがいいでしょう。

Mac

MacPorts

node本体はあるんだけど、npmはない。
http://www.florian-kubis.de/2010/09/howto-install-node-js-on-mac-snow-leopard-with-express/が参考になりそう。

Homebrew

$ brew install node
$ brew install npm

あとはnpm用のパス設定

$ vim ~/.profile
export NODE_PATH=/usr/local/lib/node:$PATH
export PATH=/usr/local/share/npm/bin:$PATH
を追記