1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

scoopでnvmからNode.jsをダウンロードしようとしてはまった話

Last updated at Posted at 2023-12-20

はじめに

vimに興味を持ち、neovimをインストールしようとこの記事を参考に環境構築していたところ、node.jsのインストールではまってしまいました。
備忘録として、記事にしようと思います。

使用環境

  • windows11
  • powershell
  • scoop v0.3.1

上記サイトを参考にscoopのインストール、そして必要なパッケージをインストールしていたところ、nvmを使ってのnodeのインストールでエラーが出ました。
エラーが出たコマンドと排出されたエラーはこちら
nvm install latest

>> C:\Users\?? ??\scoop\persist\nvm\nodejs could not be found or does not exist. Exiting.
21.4.0
Downloading node.js version 21.4.0 (64-bit)...
Error while creating C:\Users\?? ??\scoop\persist\nvm\nodejs\v21.4.0\node.zip - open C:\Users\?? ??\scoop\persist\nvm\nodejs\v21.4.0\node.zip: The filename, directory name, or volume label syntax is incorrect.
Could not download node.js v21.4.0 64-bit executable.

調べてみると、C:\Userの中にあるディレクトリ(ユーザー名)が日本語だったことが原因。そのせいでインストールしようとしても見つからないと言われていた模様。

一度決めてしまったユーザー名を変更するのは、中々に大変なので、今回は別の方法で対応することにする。

※※※ユーザー名はローマ字で付けた方がいいです。

解決方法

今回はユーザープロファイルフォルダのシンボリックリンクを作成し、そこにパスを通すやり方で解決しようと思います。

シンボリックリンクの作成の仕方は以下のサイトに載っているので説明は省きます。

今回はコマンドプロンプトで以下のようにシンボリックリンクを作成しました。(「あいうえお」が実際にはユーザー名となっています。)

C:\Users>mklink /d C:\Users\Aiueo C:\Users\あいうえお

>> C:\Users\Aiueo <<===>> C:\Users\あいうえお のシンボリック リンクが作成されました

その後、Windowsキーから「環境変数を編集」を押して、NVM_HOMEのパスのユーザー名を上で変更したシンボリックリンクに変更。

最後にコマンドを実行。

nvm root [new path]

これで大丈夫と先程ダメだったコマンドを入力。

nvm install latest

>> 21.4.0
Downloading node.js version 21.4.0 (64-bit)...
Extracting node and npm...
Complete
npm v10.2.4 installed successfully.

Installation complete. If you want to use this version, type

nvm use 21.4.0

無事にインストール完了。

その後インストールしたnode.jsを使おうとすると

nvm use 21.4.0

>> exec: "elevate.cmd": executable file not found in %PATH%:

今度は「elevate.cmd」という実行可能ファイルが見つからないといわれる。このエラーについて調べてみると、どうやら現在のバージョンのバグらしい。nvm のバージョンを下げると解消されるとのこと。なので一度nvmをアンインストールしバージョンを下げることに。

//まずは最新のバージョン確認
nvm --version
1.1.12

//ひとまずアンインストール
scoop uninstall nvm

//その後前のバージョンをインストール
scoop install nvm@1.1.11

その後改めて、node.jsをインストール。(先程環境変数を変えたおかげで、筆者はnvmを再インストールしたときは上記の操作をしなくても大丈夫でした。)

nvm install latest

>> 21.4.0
Downloading node.js version 21.4.0 (64-bit)...
Extracting node and npm...
Complete
npm v10.2.4 installed successfully.

Installation complete. If you want to use this version, type

nvm use 21.4.0

そして、インストールしたnodeを選ぶと…

nvm use 21.4.0

Now using node v21.4.0 (64-bit)

これで無事にnode.jsのインストールが完了しました!!

最後に

無事にNode.jsのインストールができました。バージョンの依存関係や、そのバージョン独自のエラーなどは検索すれば、StackOverFlowなどで記事を見つけることができます。

英語のサイトにひるみそうになりますが、今はDeepl翻訳などブラウザの拡張機能で驚くほど簡単に翻訳することもできます。それらの技術を活用して、英語のサイトでもひるまずに読んでいけたらと思いました。

1
1
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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?