节点 gyp 错误跟踪器:错误 TRK0005:无法找到:“CL.exe”。该系统找不到指定的文件

Posted

技术标签:

【中文标题】节点 gyp 错误跟踪器:错误 TRK0005:无法找到:“CL.exe”。该系统找不到指定的文件【英文标题】:node gyp error TRACKER : error TRK0005: Failed to locate: "CL.exe". The system cannot find the file specified 【发布时间】:2016-01-15 22:55:29 【问题描述】:

我想在装有 Visual Studio Community 2015、Python v2.7.3 的 Windows 10 机器上安装 bcrypt,但出现以下错误。

节点版本v4.2.1 节点gyp v3.0.3

npm install bcrypt 


C:\Users\ASMIN\Desktop\M2\app>npm install bcrypt
npm WARN package.json eapp@1.0.0 No description
npm WARN package.json eapp@1.0.0 No repository field.
npm WARN package.json eapp@1.0.0 No README data

> bcrypt@0.8.5 install C:\Users\ASMIN\Desktop\M2\app\node_modules\bcrypt
> node-gyp rebuild




 C:\Users\ASMIN\Desktop\M2\app\node_modules\bcrypt>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node
    -gyp.js" rebuild )  else (node  rebuild )
    Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
    C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(366,5): warning MSB8003: Could not find WindowsSDKDir variable from the registry.  TargetFrameworkVersio
    n or PlatformToolset may be set to an invalid version number. [C:\Users\ASMIN\Desktop\M2\app\node_modules\bcrypt\build\bcrypt_lib.vcxproj]
    TRACKER : error TRK0005: Failed to locate: "CL.exe". The system cannot find the file specified. [C:\Users\ASMIN\Desktop\M2\app\node_modules\bcrypt\build\bcrypt_lib.vcxproj]


    gyp ERR! build error
    gyp ERR! stack Error: `C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe` failed with exit code: 1
    gyp ERR! stack     at ChildProcess.onExit (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:270:23)
    gyp ERR! stack     at emitTwo (events.js:87:13)
    gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
    gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
    gyp ERR! System Windows_NT 10.0.10240
    gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
    gyp ERR! cwd C:\Users\ASMIN\Desktop\M2\app\node_modules\bcrypt
    gyp ERR! node -v v4.2.1
    gyp ERR! node-gyp -v v3.0.3
    gyp ERR! not ok
    npm ERR! Windows_NT 10.0.10240
    npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "bcrypt"
    npm ERR! node v4.2.1
    npm ERR! npm  v2.14.7
    npm ERR! code ELIFECYCLE

    npm ERR! bcrypt@0.8.5 install: `node-gyp rebuild`
    npm ERR! Exit status 1
    npm ERR!
    npm ERR! Failed at the bcrypt@0.8.5 install script 'node-gyp rebuild'.
    npm ERR! This is most likely a problem with the bcrypt package,
    npm ERR! not with npm itself.
    npm ERR! Tell the author that this fails on your system:
    npm ERR!     node-gyp rebuild
    npm ERR! You can get their info via:
    npm ERR!     npm owner ls bcrypt
    npm ERR! There is likely additional logging output above.

    npm ERR! Please include the following file with any support request:
    npm ERR!     C:\Users\ASMIN\Desktop\M2\app\npm-debug.log

【问题讨论】:

检查You will also need to install:github.com/nodejs/node-gyp 部分以确保您拥有 node-gyp 正常工作所需的一切 Issue is by default C++ compiler is not installed in vc2015, refer to 【参考方案1】:

我在另一个模块上遇到了同样的问题。

我解决了:

安装 Visual Studio Community 2013 运行npm config set msvs_version 2013 --global 运行npm install bcrypt

【讨论】:

npm config set msvs_version 2013 --global 为我修复了它。这可能是因为我在 vs2013 express 之前安装了 vs2015 社区 npm install brcrypt --msvs_version=2013 为我修复 为什么它需要依赖于 VS2013 的东西而没有在某处注明? un....可信的。我已经使用 nodejs 几个月了,每次看到那些令人生畏的红色/紫色错误和警告时,我都以为自己是 S.O.L。最后,今天,你证明我错了——我终于可以像老大一样编译nodejs模块了。 "npm config set msvs_version 2017 --global" 对我有用,谢谢!【参考方案2】:

我很容易通过在 VS2015 中创建 C++ 项目来解决此问题。

基本上,当你选择创建一个 c++ 项目时,VS2015 会要求你安装某个组件,你就让它安装。该问题将得到解决。 (顺便说一句,我在Win10上使用VS2015)

【讨论】:

这需要 8GB 的​​额外工具! 快两年了,但您的帖子仍然有效。在浪费了我一整天之后,我看到了你的帖子,这救了我。非常感谢。上帝保佑你 @TimC 当你有 迄今为止最简单直接的解决方案!【参考方案3】:

我在安装 karma(npm 模块)时遇到问题。我从 Visual Studio 2015 install 安装了 Visual c++,它工作正常。

【讨论】:

【参考方案4】:

我在构建典型的 hello_world.c 控制台应用程序时遇到了类似的问题。原因是我决定将 VS2015 安装到“C:\program files (x86)\msvc14”,但是安装程序将 cl.exe 安装到了默认的“c:\program files (x86)\Microsoft Visual Studio 14.0”路径。这显然是安装程序中的一个严重错误。

我将“Microsoft Visual Studio 14.0”的所有内容合并到“msvc14”目录下,现在一切正常。

【讨论】:

【参考方案5】:

把这个放在这里以防有人遇到同样的问题:

我已经安装了 C++ 库。

更新节点对我有用。

我假设旧版本的节点不支持我的 VS2017。

【讨论】:

【参考方案6】:

只要把它放在这里,以防有人需要它来使用 VS 2017 和 ethereum web3.js。 我在安装 web3.js 时遇到了这个问题

    将 Node.js 更新到 8.11.1 在 VS 2017 中创建一个 Visual C++ 项目,并确保它构建成功

    设置配置 msvs_version

    npm 配置集 msvs_version 2017 --global

    然后 npm install web3 -g --save

【讨论】:

以上是关于节点 gyp 错误跟踪器:错误 TRK0005:无法找到:“CL.exe”。该系统找不到指定的文件的主要内容,如果未能解决你的问题,请参考以下文章

节点 10 - npm 安装期间的“node-gyp 重建”错误

节点 sqlite node-gyp 构建错误:“v8::Object”中没有名为“ForceSet”的成员

visual studio 2017 编译v140 TRACKER : error TRK0005: Failed to locate: "CL.exe". 系统找不到指定的文件

为 npm 整数安装 node-gyp 错误

Heroku:错误:找不到模块 node-gyp

安装 Hyperledger Composer 时出错