'Error when I kick npm install in wsl2 ubuntu
When I run npm install, this error always happens in my project. Back then, I never found this error on any machine. But, this is my first try on WSL2 Ubuntu. Here is the error.
npm ERR! code 1
npm ERR! path /home/my-username/my-project/node_modules/node-sass
npm ERR! command failed
npm ERR! command sh -c node scripts/build.js
npm ERR! Building: /home/my-username/.nvm/versions/node/v17.0.1/bin/node /home/my-username/my-project/node_modules/node-gyp/bin/node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp verb cli [
npm ERR! gyp verb cli '/home/my-username/.nvm/versions/node/v17.0.1/bin/node',
npm ERR! gyp verb cli '/home/my-username/my-project/node_modules/node-gyp/bin/node-gyp.js',
npm ERR! gyp verb cli 'rebuild',
npm ERR! gyp verb cli '--verbose',
npm ERR! gyp verb cli '--libsass_ext=',
npm ERR! gyp verb cli '--libsass_cflags=',
npm ERR! gyp verb cli '--libsass_ldflags=',
npm ERR! gyp verb cli '--libsass_library='
npm ERR! gyp verb cli ]
npm ERR! gyp info using [email protected]
npm ERR! gyp info using [email protected] | linux | x64
npm ERR! gyp verb command rebuild []
npm ERR! gyp verb command clean []
npm ERR! gyp verb clean removing "build" directory
npm ERR! gyp verb command configure []
npm ERR! gyp verb check python checking for Python executable "python2" in the PATH
npm ERR! gyp verb `which` failed Error: not found: python2
npm ERR! gyp verb `which` failed at getNotFoundError (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:13:12)
npm ERR! gyp verb `which` failed at F (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:68:19)
npm ERR! gyp verb `which` failed at E (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:80:29)
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:89:16
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/isexe/index.js:42:5
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/isexe/mode.js:8:5
npm ERR! gyp verb `which` failed at FSReqCallback.oncomplete (node:fs:198:21)
npm ERR! gyp verb `which` failed python2 Error: not found: python2
npm ERR! gyp verb `which` failed at getNotFoundError (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:13:12)
npm ERR! gyp verb `which` failed at F (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:68:19)
npm ERR! gyp verb `which` failed at E (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:80:29)
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:89:16
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/isexe/index.js:42:5
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/isexe/mode.js:8:5
npm ERR! gyp verb `which` failed at FSReqCallback.oncomplete (node:fs:198:21) {
npm ERR! gyp verb `which` failed code: 'ENOENT'
npm ERR! gyp verb `which` failed }
npm ERR! gyp verb check python checking for Python executable "python" in the PATH
npm ERR! gyp verb `which` failed Error: not found: python
npm ERR! gyp verb `which` failed at getNotFoundError (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:13:12)
npm ERR! gyp verb `which` failed at F (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:68:19)
npm ERR! gyp verb `which` failed at E (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:80:29)
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:89:16
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/isexe/index.js:42:5
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/isexe/mode.js:8:5
npm ERR! gyp verb `which` failed at FSReqCallback.oncomplete (node:fs:198:21)
npm ERR! gyp verb `which` failed python Error: not found: python
npm ERR! gyp verb `which` failed at getNotFoundError (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:13:12)
npm ERR! gyp verb `which` failed at F (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:68:19)
npm ERR! gyp verb `which` failed at E (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:80:29)
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:89:16
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/isexe/index.js:42:5
npm ERR! gyp verb `which` failed at /home/my-username/my-project/node_modules/isexe/mode.js:8:5
npm ERR! gyp verb `which` failed at FSReqCallback.oncomplete (node:fs:198:21) {
npm ERR! gyp verb `which` failed code: 'ENOENT'
npm ERR! gyp verb `which` failed }
npm ERR! gyp ERR! configure error
npm ERR! gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
npm ERR! gyp ERR! stack at PythonFinder.failNoPython (/home/my-username/my-project/node_modules/node-gyp/lib/configure.js:484:19)
npm ERR! gyp ERR! stack at PythonFinder.<anonymous> (/home/my-username/my-project/node_modules/node-gyp/lib/configure.js:406:16)
npm ERR! gyp ERR! stack at F (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:68:16)
npm ERR! gyp ERR! stack at E (/home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:80:29)
npm ERR! gyp ERR! stack at /home/my-username/my-project/node_modules/node-gyp/node_modules/which/which.js:89:16
npm ERR! gyp ERR! stack at /home/my-username/my-project/node_modules/isexe/index.js:42:5
npm ERR! gyp ERR! stack at /home/my-username/my-project/node_modules/isexe/mode.js:8:5
npm ERR! gyp ERR! stack at FSReqCallback.oncomplete (node:fs:198:21)
npm ERR! gyp ERR! System Linux 5.10.16.3-microsoft-standard-WSL2
npm ERR! gyp ERR! command "/home/my-username/.nvm/versions/node/v17.0.1/bin/node" "/home/my-username/my-project/node_modules/node-gyp/bin/node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
npm ERR! gyp ERR! cwd /home/my-username/my-project/node_modules/node-sass
npm ERR! gyp ERR! node -v v17.0.1
npm ERR! gyp ERR! node-gyp -v v3.8.0
npm ERR! gyp ERR! not ok
npm ERR! Build failed with error code: 1
I have no idea what happens, I think my dev environment in WSL2 is perfect. But poor me, I was wrong. Please help me. Is there anyone who got this error too and already found the solution?
Solution 1:[1]
The solution that really worked is using nodejs version 14. I don't know why, but quasar cannot work with nodejs version 16 and newer, At least at this time.
Solution 2:[2]
Read the logs. This is a node-gyp
error, which builds NPM packages when installed. On Linux, it requires GCC and Python (2).
You need to have Python installed. If you already do, check if it's Python 2.
For Windows users around here, it needs Visual Studio (MVSC) and Python as well.
See the set up guide on their GitHub repo:
Quick solution for Ubuntu (as stated in OP)
Try installing the required packages:
sudo apt install python3 python-is-python3 gcc
Not-so-important notes
node-sass
is depreceated, so you could perhaps try using sass
.
Solution 3:[3]
I was having similar issue on wsl2 ubuntu 20.04.Can't find Python executable "python", you can set the PYTHON env variable.
When I ran yarn install
command in terminal
which is connected to wsl2 ubuntu,
I was having an internet connection error. I solved it as follows:
sudo nano /etc/resolv.conf
and changed the nameserver to 8.8.8.8
(This may be a temporary solution that needs to be done after reopen ubuntu)and then solved the python2 issue as follows:
sudo apt install python2
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | ImBIOS |
Solution 2 | |
Solution 3 | Muhammed |