跟踪器:错误 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". 系统找不到指定的文件

如何在 gpx 文件中找到第 10 个跟踪点

aiogevent 事件循环“未能”跟踪 greenlets

错误 1 未能找到类型或命名空间名称“Form1”(是不是缺少 using 指令或程序集引用?)

“/”应用程序中的服务器错误。

VS编译出错:未能找到类型,未能加载基类