0

我有一个经过编译和喜欢的项目,但我需要将它与 64 位库链接,我尝试将项目类型更改为 64,但现在项目没有正确链接。

我得到的错误是:

Error   1   error LNK1112: module machine type 'X86' conflicts with target machine type 'x64'   \createDLL.obj

检查输出,我可以看到链接器是以这种方式调用的:

C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"..\Debug\createDLL.exe" /INCREMENTAL /NOLOGO kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"..\Debug\createDLL.pdb" /SUBSYSTEM:CONSOLE /TLBID:1 /DYNAMICBASE:NO /IMPLIB:"..\Debug\createDLL.lib" /MACHINE:X64 /SAFESEH Debug\createDLL.obj

显然链接器正在寻找一个为 64 编译的 obj,但它找不到它

如何设置编译器为 x64 编译?

我正在使用 VS 2012

4

1 回答 1

0

1)如果可能,尝试获取 32 位版本的库。

2)检查Project->Properties->Configuration properties->Linker中的选项。主要检查General , Input & Advanced页面中的设置。应该可以解决你的问题

于 2013-05-15T17:19:49.857 回答