首页 > 解决方案 > 在 Windows 上运行的 Rust 我正在与针对 X86 与 x64 的基本错误作斗争

问题描述

msvcrt.lib(chkstk.obj):致命错误 LNK1112:模块机器类型“x86”与目标机器类型“x64”冲突

标签: rust

解决方案


我发现了问题。试图从开发人员的 powershell 运行 rust 导致了这个问题。在没有针对 Visual Studio 进行路径调整的常规 Windows PowerShell 中,在命令路径中找不到 link.exe,因此 cargo 似乎神奇地发现了 x64 工具目录中的绝对路径名,这是正确的。Shell 的主机体系结构不影响此行为。

不幸的是,名为 Developer PowerShell 和 Developer Command Prompt for VS 2019 的启动器为 x86 工具设置了命令路径。如果适用于目标平台的注册表解析工具目录包含可执行文件,那么 cargo 最好忽略 Windows 上位于 PATH 的可执行文件。


推荐阅读