跟踪器:错误 TRK0005:未能找到:“CL.exe”。该系统找不到指定的文件
Posted
技术标签:
【中文标题】跟踪器:错误 TRK0005:未能找到:“CL.exe”。该系统找不到指定的文件【英文标题】:TRACKER : error TRK0005: Failed to locate: "CL.exe". The system cannot find the file specified 【发布时间】:2018-04-25 15:29:36 【问题描述】:我正在尝试在 Windows 8 上的 Node.js 项目中执行以下命令:
npm install web3@1.0.0-beta.24
但我遇到了一个错误,我知道如何处理节点。
跟踪器:错误 TRK0005:未能找到:“CL.exe”。系统无法 找到指定的文件。 [C:\Projects\myproject\node_modules\scrypt\build\copied_files.vcxproj]
这是整个输出:
scrypt@6.0.3 预安装 C:\Projects\myproject\node_modules\scrypt 节点 node-scrypt-preinstall.js
scrypt@6.0.3 安装 C:\Projects\myproject\node_modules\scrypt 节点gyp重建
C:\Projects\myproject\node_modules\scrypt>如果没有定义 npm_config_node_gyp (节点 "C:\Program 文件\nodejs\node_modules\npm\bin\node-gyp-bin\....\node_modules\node-gyp\bin\node-g yp.js" rebuild ) else (node "" rebuild ) 警告:缺少输入 文件:C:\Projects\myproject\node_modules\scrypt\build..\scrypt\win\include\config.h 一次在此解决方案中构建项目。启用 并行构建,请添加“/m”开关。 C:\程序文件 (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(366,5): 警告 MSB8003:找不到 WindowsSDKDir 变量 注册表。 TargetFrameworkVersion 或 PlatformToolset 可以设置为 无效的版本号。 [C:\Projects\myproject\node_modules\scrypt\build\copied_files.vcxproj] 复制 scrypt/win/include/config.h 到 scrypt/scrypt-1.2.0/config.h 系统找不到指定的文件。跟踪器:错误 TRK0005:失败 找到:“CL.exe”。该系统找不到指定的文件。 [C:\Projects\myproject\node_modules\scrypt\build\copied_files.vcxproj]
C:\程序文件 (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\Microsoft.CppBuild.targets(366,5): 警告 MSB8003:找不到 WindowsSDKDir 变量 注册表。 TargetFrameworkVersion 或 PlatformToolset 可以设置为 无效的版本号。 [C:\Projects\myproject\node_modules\scrypt\build\scrypt_wrapper.vcxproj] 跟踪器: 错误 TRK0005:未能找到:“CL.exe”。系统找不到 指定的文件。 [C:\Projects\myproject\node_modules\scrypt\build\scrypt_wrapper.vcxproj]
gyp 错误!构建错误 gyp ERR!堆栈错误:
C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe
失败,退出代码:1 gyp ERR! ChildProcess.onExit (C:\Program 文件\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:258:23) 吉普错误!堆栈在 emitTwo (events.js:126:13) gyp ERR!堆栈在 ChildProcess.emit (events.js:214:7) 错误错误!堆栈在 Process.ChildProcess._handle.onexit (internal/child_process.js:198:12) 吉普错误!系统 Windows_NT 6.2.9200 gyp 错误!命令“C:\程序 文件\nodejs\node.exe" "C:\Program 文件\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js" “重建” gyp ERR! cwd C:\Projects\myproject\node_modules\scrypt gyp 错误!节点 -v v8.9.1 gyp 错误!节点gyp -v v3.6.2 gyp 错误!不行 npm WARN inbanner@1.6.0 没有存储库字段。npm 错误!代码 ELIFECYCLE npm 错误! errno 1 npm 错误! scrypt@6.0.3 安装:
node-gyp rebuild
npm 错误!退出状态 1 npm ERR! npm 错误! scrypt@6.0.3 安装脚本失败。 npm 错误!这大概是 npm 没问题。可能有额外的日志输出 以上。npm 错误!可以在以下位置找到此运行的完整日志:npm ERR! C:\Users\user\AppData\Roaming\npm-cache_logs\2017-11-13T01_31_12_133Z-debug.log
救命!
【问题讨论】:
如果没有安装CL.exe然后去msdn.microsoft.com/en-us/library/kezkeayy.aspx设置环境变量 【参考方案1】:我在同一条船上,网上找到的大多数答案都无法解决这个重建错误(或者不是 100% 可行)。在尝试了几种不同的方法后,我发现这种方法适用于我的机器(Windows 10 Pro)。现在,我可以毫无问题地安装 web3。 (或其他与node-gyp问题相关的包,如“truffle unbox react”)
我总结的步骤如下:
-
安装 NodeJS、Git
下载 Windows Visual Studio 2015
打开 Visual Studio 2015 并创建“新项目...”
选择“创建新的 C++ 项目” 您应该会看到 VS 请求安装“Visual C++ 2015 的常用工具”和“Windows 8.1 SDK 和通用 CRT SDK”的菜单(scrypt 中的某些进程需要此 Windows 8.1 SDK 文件中的工具) 同时选择并安装通过 npm 命令安装/链接 python
npm --add-python-to-path="true" --debug install --global windows-build-tools
将 msvs_version 设置为 2015
npm config set msvs_version 2015 --global
安装 web3
npm install web3
供参考: 我的 npm 版本:5.6.0 我的节点版本:8.9.4
希望这会有所帮助!
【讨论】:
【参考方案2】:错误! scrypt@6.0.3 安装脚本失败。
该错误是由scrypt
包引起的,因为node-gyp
无法重建,
尝试以管理员身份运行 cmd 并运行 npm install scrypt@6.0.3
,如果不起作用,请尝试 node-gyp rebuild
或 reinstall it
如果您使用 node-gyp 解决问题,您应该在安装 node-gyp
的过程中将Cl.exe
放在正确的位置
【讨论】:
我下载了 visual-cpp-build-tools 2017 并运行了安装程序,它说安装成功,但由于某种原因,我的计算机上没有名为 CL.exe 的文件。 运行 node-gyp rebuild 会产生错误,并且没有详细说明错误是什么node-gyp rebuild --verbose
应该更详细
不幸的是它没有在错误部分详细说明
尝试npm install --global --production windows-build-tools
,您是否尝试按照链接中的说明重新安装node-gyp
? ,经过一番研究,我想你需要安装visual-cpp-build-tools 2015
而不是2017
【参考方案3】:
这个包似乎需要本地编译。您需要为此安装 Visual Studio C++ Build Tools。您可以从以下链接下载相同的内容
http://landinghub.visualstudio.com/visual-cpp-build-tools
此外,您还需要确保CL.exe
在您的路径中可用。它将位于C:\Program Files\Microsoft Visual Studio 10.0\VC\ce\bin
之类的路径上。这将根据您安装的构建工具的版本而改变。
如果安装程序没有为您更新 Windows PATH 环境变量,您需要确保更新。
此外,如果 npm 仍然失败,您可以随时尝试使用 yarn
yarn add web3@1.0.0-beta.24
【讨论】:
我下载了 Visual C++ Build Tools,但是当我打开文件时它卡住了 我已经安装了 yarn,但是当我输入你写的命令时,我收到:'yarn' is not known as an internal or external command 你是怎么安装的?你应该使用npm install -g yarn
我下载了 visual-cpp-build-tools 2017 并运行了安装程序,它说安装成功,但由于某种原因,我的计算机上没有名为 CL.exe 的文件。
最后我设法安装了 Visual C++ Build Tools。出于某种原因,我不得不先卸载 Visual Studio,然后再安装它。以上是关于跟踪器:错误 TRK0005:未能找到:“CL.exe”。该系统找不到指定的文件的主要内容,如果未能解决你的问题,请参考以下文章
visual studio 2017 编译v140 TRACKER : error TRK0005: Failed to locate: "CL.exe". 系统找不到指定的文件
aiogevent 事件循环“未能”跟踪 greenlets