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

anyenvからnodenv入れるときにややハマりした話

More than 1 year has passed since last update.

anyenvを入れる

node.js触る環境作ろうとしたとき、予てより気になってたanyenvから導入しようと思い立った。
ndenvとかでバージョン管理出来る概念を知った後にanyenvの存在を知って
「あ、ここがゴールやん」と気付いた。
まとめてバージョン管理便利。

Tipsはたくさんあるので一気にメモ。

git clone https://github.com/riywo/anyenv ~/.anyenv

export PATH="$HOME/.anyenv/bin:$PATH"
eval "$(anyenv init -)"

exec $SHELL -l

アップデートも簡単に出来るようにプラグインも入れる

mkdir -p $(anyenv root)/plugins
git clone https://github.com/znz/anyenv-update.git $(anyenv root)/plugins/anyenv-update

anyenv update

anyenvをおさわりする

目的はnode.jsだけど何が入れられるのか一応見てみる

anyenv install -l
Available **envs:
  crenv
  denv
  erlenv
  exenv
  goenv
  hsenv
  jenv
  luaenv
  ndenv
  nenv
  nodenv
  phpenv
  plenv
  pyenv
  rbenv
  Renv
  sbtenv
  scalaenv
  swiftenv

なんかたくさんある。ほー、Swiftとかluaも入れられるのかー。
読み方ってノーデンブとかスイフテンブとかでいいのかしら、NO臀部。

node.jsを使えるようにする前に

前も使ってたしndenv入れよう〜と思ったら
なんかndenv以外にnenvとかnodenvとかある、全部node.jsっぽくね?
どれ入れたらいいのか分からないので各リポジトリを覗いてみる。

リポジトリ last update
nenv Updated 2 years ago
ndenv Updated 3 years ago
nodenv Updated 4 days ago

ndenvのとこにはこんなことが書いてあった。
Please consider to use nodenv. ndenv repository is not maintained actively.

なんと親切なアナウンス。
関係ないですが古い情報に対してこの情報は古いですよってアナウンスしてくれるのって
ものすごく親切だし大事なことですよね。
調べ物してて最新情報!2011年!とかなってるとイラッとするし。
「※この情報は2011年時点での〜」みたいな一文あるだけでも優しさを感じられるのですが。
※この記事は2018年12月時点での情報です。

ということでnodenv一択のようでした。

nodenvを入れようとしたら…

anyenv install nodenv
exec $SHELL -l

ここでトラブル発生

nodenv install -l
nodenv: no such command 'install'

えぇ〜?うそぉ〜ん
調べてみたけどイマイチよく分からない。

nodenv -v
nodenv 1.2.0-3-gd5fb564

nodenvは入ってんだけどなぁ

nodenv -h
Usage: nodenv <command> [<args>]

Some useful nodenv commands are:
   commands    List all available nodenv commands
   local       Set or show the local application-specific Node version
   global      Set or show the global Node version
   shell       Set or show the shell-specific Node version
   rehash      Rehash nodenv shims (run this after installing executables)
   version     Show the current Node version and its origin
   versions    List all Node versions available to nodenv
   which       Display the full path to an executable
   whence      List all Node versions that contain the given executable

See `nodenv help <command>' for information on a specific command.
For full documentation, see: https://github.com/nodenv/nodenv#readme

なんかinstallコマンドがねーんだが。
installどこ〜??

偶然見つけた解決策

cd ~/.anyenv/envs/nodenv/plugins/node-build
ls -la
drwxr-xr-x. 7 shin shin  218 Dec 28 02:35 .
drwxr-xr-x. 5 shin shin   74 Dec 28 02:35 ..
drwxr-xr-x. 2 shin shin   70 Dec 28 02:35 bin
-rw-r--r--. 1 shin shin 3379 Dec 28 02:35 CONDUCT.md
drwxr-xr-x. 8 shin shin  163 Dec 28 02:35 .git
-rw-r--r--. 1 shin shin   32 Dec 28 02:35 .gitignore
-rwxr-xr-x. 1 shin shin  357 Dec 28 02:35 install.sh
-rw-r--r--. 1 shin shin 1073 Dec 28 02:35 LICENSE
-rw-r--r--. 1 shin shin 1675 Dec 28 02:35 package.json
-rw-r--r--. 1 shin shin 6003 Dec 28 02:35 package-lock.json
-rw-r--r--. 1 shin shin 8878 Dec 28 02:35 README.md
drwxr-xr-x. 4 shin shin   54 Dec 28 02:35 script
drwxr-xr-x. 3 shin shin   24 Dec 28 02:35 share
drwxr-xr-x. 6 shin shin 4096 Dec 28 02:35 test
-rw-r--r--. 1 shin shin  179 Dec 28 02:35 .travis.yml

なんかinstall.shとかいう物体を発見
実行してみる

sh install.sh

なんも起こらない

nodenv -h
Usage: nodenv <command> [<args>]

Some useful nodenv commands are:
   commands    List all available nodenv commands
   local       Set or show the local application-specific Node version
   global      Set or show the global Node version
   shell       Set or show the shell-specific Node version
   install     Install a Node version using node-build
   uninstall   Uninstall a specific Node version
   rehash      Rehash nodenv shims (run this after installing executables)
   version     Show the current Node version and its origin
   versions    List all Node versions available to nodenv
   which       Display the full path to an executable
   whence      List all Node versions that contain the given executable

See `nodenv help <command>' for information on a specific command.
For full documentation, see: https://github.com/nodenv/nodenv#readme

出た

Hello nodenv

原因はよく分からないけどanyenv経由で入れたやつがnode-build内のファイルの取りこぼしを起こしてた?っぽい。
全ての環境で起きるのか不明ですが自分とこで発生したので足跡を残します。
ひとまずこれで使えるようになった。

nodenv install -l | grep 10.4
  0.10.4
  0.10.40
  0.10.41
  0.10.42
  0.10.43
  0.10.44
  0.10.45
  0.10.46
  0.10.47
  0.10.48
  10.4.0
  10.4.1

よかったよかった。

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
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  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
ユーザーは見つかりませんでした