简体   繁体   中英

npm ERR! gyp ERR! when installing node sass in windows 11 with Visual Studio 2022 Enterprise installed

I'm trying to install npm install node-sass --save-dev in my windows 11 but I get this npm ERR! gyp ERR! npm ERR! gyp ERR!

Error details:

C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest>npm install node-sass --save-dev
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm ERR! code 1
npm ERR! path C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest\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:\Users\Abdul Rahman\source\repos\PageTitleTest\PageTitleTest\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:\\Users\\ABCD\\source\\repos\\PageTitleTest\\PageTitleTest\\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 node-gyp@7.1.2
npm ERR! gyp info using node@17.1.0 | 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 find Python Python is not set from command line or npm configuration
npm ERR! gyp verb find Python Python is not set from environment variable PYTHON
npm ERR! gyp verb find Python checking if "python3" can be used
npm ERR! gyp verb find Python - executing "python3" to get executable path
npm ERR! gyp verb find Python - "python3" is not in PATH or produced an error
npm ERR! gyp verb find Python checking if "python" can be used
npm ERR! gyp verb find Python - executing "python" to get executable path
npm ERR! gyp verb find Python - executable path is "C:\Python27\python.exe"
npm ERR! gyp verb find Python - executing "C:\Python27\python.exe" to get version
npm ERR! gyp verb find Python - version is "2.7.18"
npm ERR! gyp info find Python using Python version 2.7.18 found at "C:\Python27\python.exe"
npm ERR! gyp verb get node dir no --target version specified, falling back to host node version: 17.1.0
npm ERR! gyp verb command install [ '17.1.0' ]
npm ERR! gyp verb install input version string "17.1.0"
npm ERR! gyp verb install installing version: 17.1.0
npm ERR! gyp verb install --ensure was passed, so won't reinstall if already installed
npm ERR! gyp verb install version is already installed, need to check "installVersion"
npm ERR! gyp verb got "installVersion" 9
npm ERR! gyp verb needs "installVersion" 9
npm ERR! gyp verb install version is good
npm ERR! gyp verb get node dir target node version installed: 17.1.0
npm ERR! gyp verb build dir attempting to create "build" dir: C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest\node_modules\node-sass\build
npm ERR! gyp verb build dir "build" dir needed to be created? C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest\node_modules\node-sass\build
npm ERR! gyp verb find VS msvs_version was set from command line or npm config
npm ERR! gyp verb find VS - looking for Visual Studio installed in "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"
npm ERR! gyp verb find VS VCINSTALLDIR not set, not running in VS Command Prompt
npm ERR! gyp verb find VS unknown version "undefined" found at "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"
npm ERR! gyp verb find VS could not find a version of Visual Studio 2017 or newer to use
npm ERR! gyp verb find VS looking for Visual Studio 2015
npm ERR! gyp verb find VS - not found
npm ERR! gyp verb find VS not looking for VS2013 as it is only supported up to Node.js 8
npm ERR! gyp ERR! find VS
npm ERR! gyp ERR! find VS msvs_version was set from command line or npm config
npm ERR! gyp ERR! find VS - looking for Visual Studio installed in "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"
npm ERR! gyp ERR! find VS VCINSTALLDIR not set, not running in VS Command Prompt
npm ERR! gyp ERR! find VS unknown version "undefined" found at "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"
npm ERR! gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use
npm ERR! gyp ERR! find VS looking for Visual Studio 2015
npm ERR! gyp ERR! find VS - not found
npm ERR! gyp ERR! find VS not looking for VS2013 as it is only supported up to Node.js 8
npm ERR! gyp ERR! find VS
npm ERR! gyp ERR! find VS valid versions for msvs_version:
npm ERR! gyp ERR! find VS
npm ERR! gyp ERR! find VS **************************************************************
npm ERR! gyp ERR! find VS You need to install the latest version of Visual Studio
npm ERR! gyp ERR! find VS including the "Desktop development with C++" workload.
npm ERR! gyp ERR! find VS For more information consult the documentation at:
npm ERR! gyp ERR! find VS https://github.com/nodejs/node-gyp#on-windows
npm ERR! gyp ERR! find VS **************************************************************
npm ERR! gyp ERR! find VS
npm ERR! gyp ERR! configure error
npm ERR! gyp ERR! stack Error: Could not find any Visual Studio installation to use
npm ERR! gyp ERR! stack     at VisualStudioFinder.fail (C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest\node_modules\node-gyp\lib\find-visualstudio.js:121:47)
npm ERR! gyp ERR! stack     at C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest\node_modules\node-gyp\lib\find-visualstudio.js:74:16
npm ERR! gyp ERR! stack     at VisualStudioFinder.findVisualStudio2013 (C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest\node_modules\node-gyp\lib\find-visualstudio.js:351:14)
npm ERR! gyp ERR! stack     at C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest\node_modules\node-gyp\lib\find-visualstudio.js:70:14
npm ERR! gyp ERR! stack     at C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest\node_modules\node-gyp\lib\find-visualstudio.js:372:16
npm ERR! gyp ERR! stack     at C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest\node_modules\node-gyp\lib\util.js:54:7
npm ERR! gyp ERR! stack     at C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest\node_modules\node-gyp\lib\util.js:33:16
npm ERR! gyp ERR! stack     at ChildProcess.exithandler (node:child_process:404:5)
npm ERR! gyp ERR! stack     at ChildProcess.emit (node:events:390:28)
npm ERR! gyp ERR! stack     at maybeClose (node:internal/child_process:1062:16)
npm ERR! gyp ERR! System Windows_NT 10.0.22000
npm ERR! gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\ABCD\\source\\repos\\PageTitleTest\\PageTitleTest\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
npm ERR! gyp ERR! cwd C:\Users\ABCD\source\repos\PageTitleTest\PageTitleTest\node_modules\node-sass
npm ERR! gyp ERR! node -v v17.1.0
npm ERR! gyp ERR! node-gyp -v v7.1.2
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\ABCD\AppData\Local\npm-cache\_logs\2021-11-23T14_08_46_000Z-debug.log

I have the following installed in my machine

  • Visual Studio 2022 Enterprise in my machine with Desktop development with C++ workload.

  • node 17.1.0

  • npm 8.1.3

  • python 2.7.18 and python 3.10.0

I have tried steps mentioned in the thread How can I solve error gypgyp ERR?ERR! find VSfind VS msvs_version not set from command line or npm config?

I have explicitly set

  • npm config set msbuild_path "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Msbuild\Current\Bin\MSBuild.exe"
  • npm config set msvs_version "C:\Program Files\Microsoft Visual Studio\2022\Enterprise"

Screenshots:

Desktop Development with C++ Workload installed: Visual Studio 2022 安装程序屏幕截图

But none works.

Please can anyone assist me on what I'm doing wrong?

@jonrsharpe many thanks for the inputs. You saved a lot of my time.

Downgrading node.js from version 17.1.0 to version 16.13.0 resolved the issue.

In my case I tried all the above:

  • Downgrading node.js from version 16.13.2 to version 16.13.0.
  • Following this atricle

and it wasnt enough...

what fixed my issue was:

  1. remove the node-sass from package.json
  2. npm install
  3. install it again in latest version via npm install --save-dev node-sass

if you find this helpful, I assume you just need to upgrade your node-sass for the latest version because it uses node-gyp as a lower version.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM