fatal error LNK1112: 模块计算机类型“x86”与目标计算机类型“x64”冲突

在Visual stduio 2017中,编译生成项目,结果出现这个提示,这是什么原因?


本项目原来是基于vc6创建的项目,因此生成的是32位的文件。现在准备应用到更高的Windows平台(比如windows2008),选择生成为64位的文件。在链接器属性中,将目标平台修改为MachineX64 (/MACHINE:X64) 。然后选择重新生成解决方案。于是就出现了这个fatal error LNK1112。


经过查找,发现了原因。


原来,不能仅仅在链接器中设置目标平台就行了。还需要在编译器参数中设置目标平台参数,将会要编译的文件的目标平台设置为64位的。

fatal error LNK1112: 模块计算机类型“x86”与目标计算机类型“x64”冲突


当然,选择的时候,这个x64在清单里可能没有,那么就需要创建了。

点击“配置管理器”,在项目名称后面的“平台”下拉框中,选择“新建”,然后选择“x64”即可。此操作只需一次,以后其他项目只需要直接选择即可。

fatal error LNK1112: 模块计算机类型“x86”与目标计算机类型“x64”冲突


配置完成之后,重新生成解决方案即可。


(点击率:95625)

评论

昵称

 聚享站 | 培训学校管理系统 | 惊觉社区 | 杭州同城分类信息 | 
这视界--www.deepvast.com这视界

浙ICP备17017888号     联系电话:1 7 3 2 6 0 4 5 2 9 0