4

I have a template that I bought but when I install it on my pc it doesn't install the dependencies, I run the NPM INSTALL command, and there comes a minute in which the error occurs and it talks about a python 2.

In the past, I'm talking about 1 year ago I installed it without problems, but that time I had another version of node because 1 month ago I had to install version 14 of node js because I wanted to work laravel with vue in the same project and it didn't let me work.

Now that I want to run the project separately and already having the whole document I get the following error.

λ npm install
npm ERR! code 1
npm ERR! path C:\laragon\www\template\node_modules\node-sass
npm ERR! command failed
npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c node scripts/build.js
npm ERR! Building: C:\Program Files\nodejs\node.exe C:\laragon\www\template\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   'C:\\Program Files\\nodejs\\node.exe',
npm ERR! gyp verb cli   'C:\\laragon\\www\\template\\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] | win32 | 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 (C:\laragon\www\template\node_modules\which\which.js:13:12)
npm ERR! gyp verb `which` failed     at F (C:\laragon\www\template\node_modules\which\which.js:68:19)
npm ERR! gyp verb `which` failed     at E (C:\laragon\www\template\node_modules\which\which.js:80:29)
npm ERR! gyp verb `which` failed     at C:\laragon\www\template\node_modules\which\which.js:89:16
npm ERR! gyp verb `which` failed     at C:\laragon\www\template\node_modules\isexe\index.js:42:5
npm ERR! gyp verb `which` failed     at C:\laragon\www\template\node_modules\isexe\windows.js:36:5
npm ERR! gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:183:21)
npm ERR! gyp verb `which` failed  python2 Error: not found: python2
npm ERR! gyp verb `which` failed     at getNotFoundError (C:\laragon\www\template\node_modules\which\which.js:13:12)
npm ERR! gyp verb `which` failed     at F (C:\laragon\www\template\node_modules\which\which.js:68:19)
npm ERR! gyp verb `which` failed     at E (C:\laragon\www\template\node_modules\which\which.js:80:29)
npm ERR! gyp verb `which` failed     at C:\laragon\www\template\node_modules\which\which.js:89:16
npm ERR! gyp verb `which` failed     at C:\laragon\www\template\node_modules\isexe\index.js:42:5
npm ERR! gyp verb `which` failed     at C:\laragon\www\template\node_modules\isexe\windows.js:36:5
npm ERR! gyp verb `which` failed     at FSReqCallback.oncomplete (fs.js:183: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` succeeded python C:\Python39\python.EXE
npm ERR! gyp ERR! configure error
npm ERR! gyp ERR! stack Error: Command failed: C:\Python39\python.EXE -c import sys; print "%s.%s.%s" % sys.version_info[:3];
npm ERR! gyp ERR! stack   File "<string>", line 1
npm ERR! gyp ERR! stack     import sys; print "%s.%s.%s" % sys.version_info[:3];
npm ERR! gyp ERR! stack                       ^
npm ERR! gyp ERR! stack SyntaxError: invalid syntax
npm ERR! gyp ERR! stack
npm ERR! gyp ERR! stack     at ChildProcess.exithandler (child_process.js:308:12)
npm ERR! gyp ERR! stack     at ChildProcess.emit (events.js:315:20)
npm ERR! gyp ERR! stack     at maybeClose (internal/child_process.js:1048:16)
npm ERR! gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:288:5)
npm ERR! gyp ERR! System Windows_NT 10.0.19043
npm ERR! gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\laragon\\www\\template\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
npm ERR! gyp ERR! cwd C:\laragon\www\template\node_modules\node-sass
npm ERR! gyp ERR! node -v v14.16.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

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\alex_\AppData\Local\npm-cache\_logs\2021-06-26T05_21_01_578Z-debug.log

I was investigating and some people told me to run these commands in administrator mode:

Download any version of python from the Microsoft store and execute these commands:

npm install --global windows-build-tools
node-gyp install

The version of Nodejs I have is v14.16.1

3
  • The problem is your dependency node-sass which requires Python and the C++ build tools to be installed on your computer. To be able to access non-JS tools (i.e. Python, etc.) the library node-gyp is used. Commented Jun 26, 2021 at 5:42
  • You can manage different node versions using the nvm library (Node Version Manager). For Window Machine: github.com/coreybutler/nvm-windows After changing the node version, delete the node_modules directory and the package-lock.json and then run npm install I think its works. Thanks. Commented Jun 26, 2021 at 5:44
  • 1
    The node-gyp installation issue is a common problem though and you can find the official solution here: github.com/nodejs/node-gyp#on-windows In future projects I would always use dart-sass instead of node-sass which is not requiring any system dependencies. Commented Jun 26, 2021 at 5:45

1 Answer 1

3

I had the same problem some time ago when I wanted to use vue-paper-dashboard.

When I executed npm install it gave me the same errors. Do some research, I figured out this was a compatibility issue coming from node-sass and my nodejs version. I updated the version of the development dependencies and it worked!

Previously my packages.json looked something like this :

{
    //...
    "devDependencies": {
        "@vue/cli-plugin-babel": "^3.10.0",
        "@vue/cli-plugin-eslint": "^3.10.0",
        "@vue/cli-service": "^3.10.0",
        "@vue/eslint-config-prettier": "^5.0.0",
        "node-sass": "^4.8.3",
        "sass-loader": "^6.0.7",
        "vue-template-compiler": "^2.6.10"
    },
    //...
}

And now it looks like this :

{
    //...
    "devDependencies": {
        "@vue/cli-plugin-babel": "^4.x.x",
        "@vue/cli-plugin-eslint": "^4.x.x",
        "@vue/cli-service": "^4.x.x",
        "@vue/eslint-config-prettier": "^6.0.0",
        "node-sass": "^6.0.1",
        "sass": "^1.43.2",
        "sass-loader": "^12.2.0",
        "vue-template-compiler": "^2.6.10",
        "webpack": "^5.58.2"
     },
     //...
}

Unfortunately, I encountered some compatibility issues later... nothing very serious.

Here see node version support policy.

Update

Otherwise, you can just downgrade your node version using nvm. In my case, on windows, I installed nvm for windows and downgrade the node version from 16.0.1 to 14.18.1 and it worked fine!

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.