前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VC9: LINK : warning LNK4068: /MACHINE not specified; defaulting to X86

VC9: LINK : warning LNK4068: /MACHINE not specified; defaulting to X86

作者头像
用户4766018
发布2022-08-19 09:01:23
4040
发布2022-08-19 09:01:23
举报
文章被收录于专栏:格物致知格物致知

当把32位程序改成X64的配置编译后,可能会出现错误:

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

通常是因为某些编译单元被编译成了X86的机器码,进一步的原因是编译选项中缺少 /MACHINE,默认会选择X86;在属性中的link面板中加入/MACHINE:X64 即可。

The error is explicit, you are trying to link libraries that were compiled with different CPU targets. An executable image can only contain pure x86 (32-bit) or pure x64 (64-bit) code. Mixing is not possible.

You change the target CPU by creating a new configuration for the project, only changing the linker setting isn't enough. Build + Configuration Manager, Active solution platform combo on upper right, choose New and select x64. That creates a new configuration with several modified project settings, most importantly the compiler that will be used.

Beware that prior to VS2010, the 64-bit compilers are not installed by default. If you don't see x64 in the platform combo then you'll need to re-run setup.exe and turn on the option to install the 64-bit compilers. Then also re-run any service pack installer you may have applied.

A possible approach with less pain points is to use the 32-bit version of the library.

bumped into this too and found a solution.

First on how I got into this problem. I have a project which builds in x86. Then I use the Configuration Manager to add x64, and I hit this problem.

By looking at BuildLog.htm carefully, I see both of these listed as linker options: /MACHINE:X64 /machine:X86

I can't find any where in the Property Pages dialog where I can change this, so I open up the .vcproj file and look for the appropriate line and change it to: AdditionalOptions=" /STACK:10000000 /machine:x64 /debug"

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2012-03-23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档