VC2010遇到的LNK2001 2019错误
这样的LNK错误之前遇到过,多半是因为没加LIB文件导致的。
可现在问题有些不同:
在win32编译器下,没有这样的错误,可以成功生成EXE文件。换X64编译器,立马产生一堆这样的错误
我的目的是想测试下代码是否可以移植到WIN64位系统上。
可是用X64编译器编译,出现那么多链接错误。
下面是我的编译环境:
OS: WIN 7 64位
开发工具:VC2010(工具本身是32位的,不过我装了2个编译器,一个WIN32,一个X64,为了测试代码可移植性)
跪求高人帮忙啊
[解决办法]
kernel32.lib那些只是一个名字而已,有32位也有64位的
所以你这个不好说了
log文件里写的啥呢
你可以直接套用他的命令行在cmd里输入(开始菜单里找 Visual Studio x64 兼容工具命令提示(2010))
到你的构建目录
输入cl 和 link 确定是否是64位
link /OUT:"D:\Projects\ProtoDriWinPcap\x64\Debug\ProtoDriWinPcap.dll" /INCREMENTAL /NOLOGO /DLL "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /DEF:"ProtoDriWinPcap.def" /MANIFEST /ManifestFile:"x64\Debug\ProtoDriWinPcap.dll.intermediate.manifest" /ALLOWISOLATION /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DEBUG /PDB:"D:\Projects\ProtoDriWinPcap\x64\Debug\ProtoDriWinPcap.pdb" /SUBSYSTEM:WINDOWS /PGD:"D:\Projects\ProtoDriWinPcap\x64\Debug\ProtoDriWinPcap.pgd" /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X64 /ERRORREPORT:QUEUE ...obj...
后面跟你编译生成的obj
我怀疑你IDE出了什么问题,虽然设置是这样,可是调用的link不对……
[解决办法]
Visual Studio
64 位应用程序
ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.VisualStudio.v80.chs/dv_vs64/html/fd4026bc-2c3d-4b27-86dc-ec5e96018181.htm