Help us understand the problem. What is going on with this article?

anyenv から入れた nodenv で Node.js を入れたときのメモ

More than 1 year has passed since last update.

本記事について

「りあクト!」1を読みはじめ、本のように「anyenv 経由で ndenv をインストールして、ndenv で Node.js をインストール」しようと思ったら、anyenv で ndenv をインストールできないなど、状況が変わっていてハマったため残したメモです。

環境

  • OS:macOS Mojave
  • シェル:zsh
  • homebrew インストール済み
  • これまで nvm を使用

概要

結局今回は以下でインストールが完了しました:

  1. anyenv をインストール
  2. anyenv 経由で nodenv をインストール
  3. nodenv で Node.js をインストール
  4. これまで使っていた nvm のアンインストール

anyenv のインストール方法

GitHub - anyenv/anyenv: All in one for **env

README にはまず homebrew でのインストールが紹介されているが、ブログや Qiita を見ると多くが git clone でインストールしている。homebrew 版はかなり最近なんだろうか。

こちらでは両方の方法が紹介されている。
https://qiita.com/rinpa/items/81766cd6a7b23dea9f3c

anyenv のインストール

今回は homebrew でインストールしてみる。
README に従う。

$ brew install anyenv

$ anyenv init
# Load anyenv automatically by adding
# the following to ~/.zshrc:

eval "$(anyenv init -)"

$ anyenv init を打ったら指示が出てきた。指示の通りに ~/.zshrc に追記。
そしてターミナル再起動。すると(README の通り)次の warning が出る。

ANYENV_DEFINITION_ROOT(/Users/xxx/.config/anyenv/anyenv-install) doesn't exist. You can initialize it by:
> anyenv install --init

warning の通り実行。

$ anyenv install --init
Manifest directory doesn't exist: /Users/xxx/.config/anyenv/anyenv-install
Do you want to checkout ? [y/N]: y
Cloning https://github.com/anyenv/anyenv-install.git master to /Users/xxx/.config/anyenv/anyenv-install...
Cloning into '/Users/xxx/.config/anyenv/anyenv-install'...
remote: Enumerating objects: 44, done.
remote: Counting objects: 100% (44/44), done.
remote: Compressing objects: 100% (39/39), done.
remote: Total 44 (delta 1), reused 43 (delta 1), pack-reused 0
Unpacking objects: 100% (44/44), done.

Completed!

ndenv のインストール(できない)

anyenv で ndenv が入れられない。

$ anyenv install ndenv
anyenv-install: definition not found: ndenv

ndenv は非推奨になっていた

nodenv のインストール

ndenv の代わりに nodenv が推奨になっていたため、こちらをインストール。

$ anyenv install nodenv
$ exec $SHELL -l

Node.js のインストール

$ nodenv install -l
$ nodenv install 12.0.0
$ node -v
v7.6.0
$ npm -v
4.1.2
$ nodenv global 12.0.0
$ node -v
v7.6.0
$ npm -v
4.1.2

インストールしたはずの node v12.0.0 が呼び出せない。
(nvm など使ってない方はここで呼び出せるはず?)

nvm のアンインストール(必要な人のみ)

ここで、自分がこれまで nvm を使っていたことを思い出し、nvm をアンインストールすることに。
(nvm 使ってなかった人は、すでに新しく入れた node が使えてるかと思うので以下は関係ないです。)
アンインストール方法は GitHub の README を参照

➜  ~rm -rf "$NVM_DIR"

(つまり ~/.nvm の削除)

そして ~/.zshrc の下記を削除:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm

確認:

$ node -v
v12.0.0
$ npm -v
6.9.0

呼び出せた :tada:

やっと本の続きが読める

silmisilon
何者にもなれない系エンジニア。同じ名義で音楽などやっています。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away