Vagrantで動かしてるUbuntu14.04にそろそろnode.jsを入れてやろうとnodeのバージョン管理ツールどれがいいかな~とか模索した結果nodebrewを選んだ。http://jxck.hatenablog.com/entry/20120224/1330035058 辺りとか。
導入
READMEに沿ってDL→インストールしていくわけだが。
$ wget git.io/nodebrew
$ perl nodebrew setup
別にcurl -L git.io/nodebrew | perl - setup
でも構わないんだが503エラー吐かれててもわからなかった過去が()
.bashrcや.zshrc等に次を追加
export PATH=$HOME/.nodebrew/current/bin:$PATH
.bashrcをリロード
$ source ~/.bashrc
node.jsをインストール
とりあえずnodebrew install latest
ってしてやるとnode.jsの最新版をDLしてコンパイルし始める。
しかし、v8辺りでエラー起こすんですね…何度もループするからCtrl
+C
でとりあえず止めてやる。
追記 最近のバージョンのnode(v4 LTSとか)だったら問題ないはずだしむしろ古いのだとダメだからな?というかインストールに時間かけるの無駄だし素直に
(以下古い話)
install-binary
しような?
(以下古い話)
g++4.7ならいけるらしいんでapt-getしてやる。
$ sudo apt-get install g++-4.7
g++のバージョンを渡してやってやり直す。
$ CXX=g++-4.7 nodebrew install latest
気長に待てば多分出来上がる。
セットしてやる
$ nodebrew use latest
チェック
$ node -v
v0.11.12
npmも試しておく
$ npm -v
1.4.3
LESSでもインストールしてみる
$ npm install -g less
...
/home/vagrant/.nodebrew/node/v0.11.12/bin/lessc -> /home/vagrant/.nodebrew/node/v0.11.12/lib/node_modules/less/bin/lessc
less@1.7.0 /home/vagrant/.nodebrew/node/v0.11.12/lib/node_modules/less
├── mime@1.2.11
├── mkdirp@0.3.5
├── clean-css@2.1.8 (commander@2.1.0)
├── source-map@0.1.33 (amdefine@0.1.0)
└── request@2.34.0 (json-stringify-safe@5.0.0, forever-agent@0.5.2, aws-sign2@0.5.0, qs@0.6.6, tunnel-agent@0.3.0, oauth-sign@0.3.0, node-uuid@1.4.1, tough-cookie@0.12.1, form-data@0.1.2, http-signature@0.10.0, hawk@1.0.0)
$ lessc -v
lessc 1.7.0 (LESS Compiler) [JavaScript]
お疲れ様です。
このときはすっかり忘れてたけどbinary-installならバイナリからインストールできる訳だしこの問題はとりあえず飛ばせる。でもnode-gypのコンパイルでg++47が必要なことがあるらしい。(コメント参照)
自分はしばらくDebian系でnode使ってないから確認してないけど。
自分はしばらくDebian系でnode使ってないから確認してないけど。