致命错误LNK1112:模块机器类型“X86”与2010年的目标机器类型“x64”冲突

时间:2013-02-05 09:55:33

标签: c++ visual-studio-2010 linker

我尝试运行示例应用程序。此应用程序适用于32位机器。但我想在64位机器上运行它,但我得到以下错误:

AFE \ AnyFirewallEngine \ Unicode Debug \ AfBenchmark.obj:致命错误LNK1112:模块机器类型“X86”与目标机器类型“x64”冲突

我在这里使用两个第三方库 1. Openssl-0.9.8e
2.提升

已经为64位构建。

我的编译器是visual studio 2010

请帮助我.................

2 个答案:

答案 0 :(得分:1)

您显然至少使用one other third party library,并且您尝试链接的二进制文件是为x86构建的。您将不得不找到或生成AFE的x64二进制文件。

答案 1 :(得分:1)

在我的情况下,openssl 1.0.2d遇到了同样的问题:

fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64'

当我vcvars64.bat vcvars32.bat {{}}}时,问题就解决了。 在VS15中,它位于:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\vcvars64.bat

然后我就可以毫无问题地运行ms\do_win64a和nmake -f ms\nt.mak