npm install
でエラー
System
- Ubuntu 20.04.4 LTS
- WSL 1
- nvm 0.35.2
- nodejs v16.16.0
-
which node
の結果は~/.nvm/versions/node/v16.16.0/bin/node
-
- npm 8.13.2
-
which npm
の結果は~/.nvm/versions/node/v16.16.0/bin/npm
-
Issue
Run Out of Home Directory
/mnt/g/<subdirectories>
下にgitでnodejsプロジェクトを持ってきて
cd /mnt/g/<subdirectories>/
git clone <project>
cd <project>
npm install
としたらめっちゃエラーが出てきた。
npm ERR! code EPERM
npm ERR! syscall symlink
npm ERR! path ../prebuild-install/bin.js
npm ERR! dest /mnt/g/<subdirectories>/<project>/node_modules/.bin/prebuild-install
npm ERR! errno -1
npm ERR! Error: EPERM: operation not permitted, symlink '../prebuild-install/bin.js' -> '/mnt/g/<subdirectories>/<project>/node_modules/.bin/prebuild-install'
npm ERR! [Error: EPERM: operation not permitted, symlink '../prebuild-install/bin.js' -> '/mnt/g/<subdirectories>/<project>/node_modules/.bin/prebuild-install'] {
...
Ron in Home directory
以下は問題なく成功
cd ~
git clone <project>
cd <project>
npm install
Solution
--no-bin-links
をつけて再実行
npm install --no-bin-links
以下の議論的に ln -s
をwindowsのsystemfileに張ろうとしてるのが悪いっぽい?
- https://github.com/microsoft/WSL/issues/3
- https://github.com/MicrosoftDocs/WSL/issues/26
- https://github.com/microsoft/WSL/issues/14
しかし、https://github.com/microsoft/WSL/issues/3#issuecomment-272824865
の曰く、--no-bin-links
でよいとのことなので試したらうまくいった。
そのほかに微妙に違う問題でうまくいかない人がいるようで、その場合はいくつか別のオプションやら設定をして解決しなければならないようだった。