hirokonaBlog

ググる→忘れそう→即時メモ 京都のWebデザイナーの備忘録

いきがってhomebrewからnodebrewに変更したら毎回nodeのPATHが通らずにげんなりした話

[2016.05.26 add]

nodebrewなんで入れてんhomebrewでええやん(メッも)

他の人のプロジェクトでnodeのバージョンが古くないと動かねプラグイン使ってた。
homebrewだとnodeの複数バージョン管理には対応してなかった。
nodebrewだとnodeの複数バージョン管理には対応していて、複数DL、切り替えて利用できることがわかった。
だから入れた。全ては互換性のため。でもそんなの使ってる時点でメンテしづらいから長期的案件には使わないでねってオモタ。
[/2016.05.26 add]

概要

nodebrew入れる→初回は動く→Mac再起動する→nodebrewは呼び出せる($ nodebrew -v でバージョン情報が出る)→nodeは呼び出せない($ node -v で node: command not found)→なんでや。。

前回nodebrewに変更した時の記事:
nodebrew入れようとして詰まった話。 | hirokona

nodebrew入れようとして詰まった話。

そもそもsocket.io試してみようと思った時についでにやったんだよね:
ソケットまわり | hirokona

ソケットまわり

治りました。

ホームディレクトリ(mac内のユーザー毎のディレクトリでアイコンがお家アイコンになってるとこ、/Users/[ユーザー名]/など)に、.bash_profileと.bashrcの2ファイルを用意して配置
(いったん中身は空白で良し)
(.bashrcがすでにある場合は内容を上書きしてもよいかチェック)
※場所は場合によって違うかもなので要確認。

.bashrcにはPATHをとおす記述を書く

export PATH=$HOME/.nodebrew/current/bin:$PATH

.bash_profileには毎回起動時にbashrcを読み込む記述を書く

source .bashrc

で、治りました。
今度再起動してもっかいおかしかったらまた追記します。

原因

node: command not foundで検索。。。。
nodebrewでnode.jsをインストール – kinalog

どうやら.bashrcをコマンド叩いて毎回読み込ませないと動かないようになる的なことがあるらしい
私もそうなっている模様
試しに下記で(手動で)nodeのお伺いを立てる

$ source .bashrc
$ node -v

v4.1.2
…ちゃんとバージョン情報出た。
えー。毎回2行書くのめんどいよう。

というわけで上記のURLにあったようにbash_profileから毎回bashrcをみてもらう。
ただ、そのままだとnodebrew自体も動かなくなっちゃっちゃ(なんでや)ので下記を参照

Linux – 【Mac】ターミナルで使うコマンドのエイリアスを設定する – Qiita
http://qiita.com/YusukeHigaki/items/67a17995c8a4e1329d11

bash_profileにbashrcを読みこませる記述

$ source .bashrc

の中の$をなくした実行部分

source .bashrc

を記述。

おお。無事通った。良かったよかった。
私は全くこの辺疎いので変なことやってるかもですが、誰かのご参考までにメモっとく。

[2016.05.26 add]

nodebrewでよく使う(だろう)コマンド

node.jsのversionを管理するためにnodebrewを利用する – Qiita
http://qiita.com/sinmetal/items/154e81823f386279b33c

node.jsのversionを管理するためにnodebrewを利用する – Qiita
http://qiita.com/sinmetal/items/154e81823f386279b33c

最新版をインストールする

$ nodebrew install-binary stable

最新版を使う

$ nodebrew use stable

インストールしたバージョン一覧を出す

$ nodebrew ls

[/2016.05.26 add]


投稿日

カテゴリー:

,

投稿者:

タグ:

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください