当前位置: 首页 > article >正文

关于 node-sass 库在windows下编译错误

今天在拉下来一个前端项目下载依赖时发现总是报 node-sass 这个库相关的错误,具体如下:

npm ERR! code 1
npm ERR! path D:\Java\xingqiu_pull\shortlink\console-vue\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 D:\Java\xingqiu_pull\shortlink\console-vue\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   'D:\\Java\\xingqiu_pull\\shortlink\\console-vue\\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@8.4.1
npm ERR! gyp info using node@20.12.2 | 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 "E:\MyAPP\AI\python.exe"
npm ERR! gyp verb find Python - executing "E:\MyAPP\AI\python.exe" to get version
npm ERR! gyp verb find Python - version is "3.12.4"
npm ERR! gyp info find Python using Python version 3.12.4 found at "E:\MyAPP\AI\python.exe"
npm ERR! gyp verb get node dir no --target version specified, falling back to host node version: 20.12.2
npm ERR! gyp verb command install [ '20.12.2' ]
npm ERR! gyp verb install input version string "20.12.2"
npm ERR! gyp verb install installing version: 20.12.2
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: 20.12.2
npm ERR! gyp verb build dir attempting to create "build" dir: D:\Java\xingqiu_pull\shortlink\console-vue\node_modules\node-sass\build
npm ERR! gyp verb build dir "build" dir needed to be created? Yes
npm ERR! gyp verb find VS msvs_version not set from command line or npm config
npm ERR! gyp verb find VS VCINSTALLDIR not set, not running in VS Command Prompt
npm ERR! gyp verb find VS checking VS2022 (17.12.35527.113) found at:
npm ERR! gyp verb find VS "D:\Visual Studio"
npm ERR! gyp verb find VS - found "Visual Studio C++ core features"
npm ERR! gyp verb find VS - found VC++ toolset: v143
npm ERR! gyp verb find VS - missing any Windows SDK
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 not set from command line or npm config
npm ERR! gyp ERR! find VS VCINSTALLDIR not set, not running in VS Command Prompt
npm ERR! gyp ERR! find VS checking VS2022 (17.12.35527.113) found at:
npm ERR! gyp ERR! find VS "D:\Visual Studio"
npm ERR! gyp ERR! find VS - found "Visual Studio C++ core features"
npm ERR! gyp ERR! find VS - found VC++ toolset: v143
npm ERR! gyp ERR! find VS - missing any Windows SDK
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 **************************************************************
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 (D:\Java\xingqiu_pull\shortlink\console-vue\node_modules\node-gyp\lib\find-visualstudio.js:122:47)
npm ERR! gyp ERR! stack     at D:\Java\xingqiu_pull\shortlink\console-vue\node_modules\node-gyp\lib\find-visualstudio.js:75:16
npm ERR! gyp ERR! stack     at VisualStudioFinder.findVisualStudio2013 (D:\Java\xingqiu_pull\shortlink\console-vue\node_modules\node-gyp\lib\find-visualstudio.js:363:14)
npm ERR! gyp ERR! stack     at D:\Java\xingqiu_pull\shortlink\console-vue\node_modules\node-gyp\lib\find-visualstudio.js:71:14
npm ERR! gyp ERR! stack     at D:\Java\xingqiu_pull\shortlink\console-vue\node_modules\node-gyp\lib\find-visualstudio.js:384:16
npm ERR! gyp ERR! stack     at D:\Java\xingqiu_pull\shortlink\console-vue\node_modules\node-gyp\lib\util.js:54:7
npm ERR! gyp ERR! stack     at D:\Java\xingqiu_pull\shortlink\console-vue\node_modules\node-gyp\lib\util.js:33:16
npm ERR! gyp ERR! stack     at ChildProcess.exithandler (node:child_process:430:5)
npm ERR! gyp ERR! stack     at ChildProcess.emit (node:events:518:28)
npm ERR! gyp ERR! stack     at maybeClose (node:internal/child_process:1105:16)
npm ERR! gyp ERR! System Windows_NT 10.0.22631
npm ERR! gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "D:\\Java\\xingqiu_pull\\shortlink\\console-vue\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" "--verbose" "--libsass_ext=" "--libsass_cflags=" "--libsass_ldflags=" "--libsass_library="
npm ERR! gyp ERR! cwd D:\Java\xingqiu_pull\shortlink\console-vue\node_modules\node-sass
npm ERR! gyp ERR! node -v v20.12.2
npm ERR! gyp ERR! node-gyp -v v8.4.1
npm ERR! gyp ERR! not ok
npm ERR! Build failed with error code: 1
解析

几次反复修改发现是自己的电脑上把 Visual Studio 环境给卸载了,而这 node-sass 库则需要 C++ 桌面环境和 Visual Studio 环境,所以先补了 VS 环境和 C++ 所有桌面开发包,然后运行 npm install 去安装依赖,但是仍然报如上错误,最后排查发现是没有 node-sass 脚本的执行权限

最后使用管理员模式启动 Powershell 执行如下命令

set-executionpolicy remotesigned

来改变 Powershell 的执行策略即可

执行如上命令改变执行策略可能会有一定风险

今天就水一篇文章啦!!!


http://www.kler.cn/a/447755.html

相关文章:

  • c++ ------语句
  • 车载网关性能 --- 缓存buffer划分要求
  • 强基计划之编程:开启科研精英培养新路径
  • python 曲线拟合,曲线拟合交点
  • React图标库: 使用React Icons实现定制化图标效果
  • 搜索召回:倒排召回
  • C#都可以找哪些工作?
  • 【机器人】机械臂轨迹和转矩控制对比
  • 语言学习大冒险:粤语、英语、西语的酸甜苦辣
  • 编写Linux系统rhel9的网络配置脚本
  • PYTHON 自动化办公:更改图片尺寸大小
  • Spring之我见 - 从IOC谈到AOP实现原理
  • YOLO模型分布式训练:步骤与操作方式
  • 【面经】python后端开发工程师
  • CFD POST导出动画
  • Open3D 进阶(26)Hierarchical Clustering算法实现点云分割
  • 【C语言1】C语言常见概念(总结复习篇)——库函数、ASCII码、转义字符
  • 入门靶机:DC-1的渗透测试
  • OpenAI直播发布第11天:ChatGPT桌面客户端升级,就这?
  • 一些经济政治学类书籍推荐 --- 以及与之相关我的经历和理解
  • 前端生成docx文档、excel表格、图片、pdf文件
  • docker 软连接修改存储位置
  • MySQL列类型
  • 知网研学 | 知网文献(CAJ+PDF)批量下载
  • 前端实现图片压缩
  • C++进阶-1-单继承、多继承、虚继承