OpenSSL 致命错误 LNK1112:模块机器类型“x86”与目标机器类型“x64”冲突

问题描述

我在尝试在 Windows 10 上构建 OpenSSL 时遇到了一个非常令人沮丧的错误。我得到的错误

"lib" /nologo /out:providers\libdefault_static.lib @C:\Users\jcava\AppData\Local\Temp\nmF1AF.tmp
providers\common\libdefault-lib-bio_prov.obj : Fatal error LNK1112: module machine type 'x86' conflicts with target machine type 'x64

我正在执行的步骤是在我从 Github 克隆的 openssl 目录中运行 perl Configure VC-WIN64A 然后 nmake。我在 VS 2019 的 x64 命令行提示符中运行所有这些。

干杯, 詹姆斯

解决方法

我遇到了类似的问题。这意味着已经使用 x86 编译了一些目标文件(在这种情况下)。也许您一开始使用的是 x86 编译器。

如果您删除所有目标文件(在您的 openssl 目录中键入 del /S *.obj),然后再次运行 nmake,它应该可以正常编译。

或者,您可以重新克隆存储库并重新开始。