我在使用XP平台上的makefile构建一个针对IA64的atl com dll时遇到以下链接器错误。
1>atls.lib(atlcommodule.obj) : fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'IA64'
1>NMAKE : fatal error U1077: '"E:\Program Files\Microsoft Visual Studio 9.0\VC\Bin\x86_IA64\link.exe"' : return code '0x458'
Can anyone tell where I made a mistake?
答案 0 :(得分:0)
很难说在这种特殊情况下错误来自何处,但通常意味着您尝试链接到为代码而不是目标体系结构编译的库。
你说你想生成IA64代码,但是为x86(可能是libs)编译了一些东西
答案 1 :(得分:0)
第一行讨论来自atls.lib的atlcommodule.obj。怎么编译?它可能包含在x86目录中吗?
答案 2 :(得分:0)
这是链接目标平台不匹配。不是编译器问题。
检查项目文件以获取以下代码。如果找到它,请将其删除。
<Link>
...
<TargetMachine>MachineX86</TargetMachine>
</Link>