Hyd*_*n14 15 windows linker rust
我有一个 Rust 项目,可以在 Linux、macOS 和 Windows 10 上编译良好。
我今天使用Visual Studio 安装程序在 Windows 7 计算机上安装了以下各个组件:
VC++ 2015.3 v14.00 (v140) toolset for desktop
Windows Universal CRT SDK(依赖)Windows 8.1 SDK(依赖)之后,我使用官方网站rustup-init.exe上的新版本安装了 Rust新版本安装了 Rust 。
当我cargo build在 Windows 7 计算机上运行 Rust 项目时,它失败并显示以下消息:
error: linking with `C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\link.exe\` failed: exit code: 325595.
Run Code Online (Sandbox Code Playgroud)
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\link.exe在我的 Windows 10 计算机上不带任何参数单独运行all 会产生一些“帮助”信息,但在我的 Windows 7 计算机上,我会收到一个包含错误消息的窗口:
The application was unable to start correctly (0xc000007b). Click Ok to close the application.
Run Code Online (Sandbox Code Playgroud)
我的 Google-Fu 没有找到任何有用的信息。我试过了:
sfc /scannowmun*_*adi 36
更改默认链接器可以解决此问题。我的系统是 64 位系统,但链接器指向 32 位系统。
Rust书中也提到了这一点
rustup default stable-x86_64-pc-windows-gnu
Run Code Online (Sandbox Code Playgroud)
阅读本文以获取有关为什么会发生这种情况的更多解释。
默认情况下,配置选择 32 位,因此运行上面给出的命令会将链接器切换为 64 位。
下载最新的 64 位运行时Visual C++ Redistributable for Visual Studio 2017后,link.exe可以在我的 Windows 7 计算机上运行。我现在可以编译我的 Rust 项目了。
令我惊讶的是,Visual Studio 安装程序无法确保为 2015 工具集安装必要的运行时组件。
更新: Stargateur指出 Redistributable 可以直接从 Visual Studio 安装程序安装。它是Visual C++ 2017 Redistributable Update单独的组件。
| 归档时间: |
|
| 查看次数: |
24802 次 |
| 最近记录: |