LoginSignup
11
5

More than 5 years have passed since last update.

install と install-binary でどれくらい違うのか試す。試した。

Posted at

node.jsの安定版をインストールしようとしたらコマンド間違えて(ほんのちょっと)泣きそうになったのでまとめておく。

node.jsをnodebrewで管理するようにした。

gulp使うことになったのでついでだしnode.jsをnodebrewで管理するようにした。
なので全編nodebrewでお届け。

nodebrewのインストール云々は一番下でまとめる。

node.jsの安定版をインストールする。

nodebrewを使ってインストールする際、何通りかあって今回は安定版でとりあえずいいかー。と思ってた。
早いって聞いてたから

nodebrew install-binary stable

しようと思ってたら

nodebrew install stable

してた。

吐くかなってくらい長かったので途中で断念して仕切り直したけど気になったから時間を測って見た。

どれくらい時間かかるのか測ってみる

使用しているPCだったりネットの環境にもよると思いますが、以下の通り。(macを使用しています。)

まずは早い"install-binary"

time nodebrew install-binary stable
Fetching: https://nodejs.org/dist/v7.5.0/node-v7.5.0-darwin-x64.tar.gz
######################################################################## 100.0%
Installed successfully

real    0m14.390s
user    0m2.189s
sys 0m1.277s

まんまの"install"

time nodebrew install stable
・
・
(省略)
・
・
real    40m35.822s
user    31m21.746s
sys 4m5.134s

30分・・・長い・・・

uninstallは、

time nodebrew uninstall v7.5.0
v7.5.0 uninstalled

real    0m0.488s
user    0m0.155s
sys 0m0.266s

って感じ。早い。

"-binary"ってなんで早いの

単なる"install"はソースからコンパイルするから時間がかかるらしい。
現時点では、バイナリっていうくらいなので二進法で書かれててコンピューターの解釈の手間が減るからだと理解している。
インストールする時にFetchしている拡張子が"tar.gz"なので圧縮されているバイナリデータを解凍するだけ!という感じなのかな。

とにかく"install-binary"の方が早い。

Fetchしている2つの種類

"install-binary"では、node-v7.5.0-darwin-x64.tar.gz
"install"では、node-v7.5.0.tar.gz

"binary"だとちゃんとmac用のをとって来ている・・・
それで余計早いのかな・・・

nodebrewでnode.jsを管理する。

nodeenvってやつもあってどっちがいいのかよくわからなかったけどHomebrewで前は管理していたので名前でnodebrewにした。

以下の参考のまんまですが、

まずcurlコマンドを使ってdownloadしてsetupにパイプします。
curl -L git.io/nodebrew | perl - setup

次に.bashrcに以下を追記します。
export PATH=$HOME/.nodebrew/current/bin:$PATH

.bashrcをリロードします。
source ~/.bashrc

helpを開けるか確認します。
nodebrew help

開けたらインストール完了です。

最後に.nodebrewまでのパスを変更して(?)終わりです。これも.bashrcに追記しました。
export NODEBREW_ROOT=/path/to/.nodebrew

インストールが終わったら、nodebrew useで設定しておきましょう。

参考:hokaccha/nodebrew: Node.js version manager
参考:Node.jsの管理をHomebrewからnodebrewに変える - Qiita]
参考:nodenv を使って Mac に Node.js の環境を構築する

11
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
5