1

我正在将一个项目从 VC10 移植到 VC11,并且在链接包含initXxx加载 DLL 时 Python 调用的函数的组件时出现以下错误:

 1>PyCAL.obj : error LNK2019: unresolved external symbol __imp__PyErr_SetString referenced in function __catch$_initPyCAL$0
 1>PyCAL.obj : error LNK2019: unresolved external symbol __imp__PyErr_Occurred referenced in function __catch$_initPyCAL$1

有趣的是,在VC10中没有问题,虽然在这两种情况下,都只显示,但dumpbin /exports在目标文件显示。(我已经尝试过使用和不使用 SAFESEH,因为这在过去造成了问题。)python27.lib_PyErr_SetStringdumpbin /symbols__imp__PyErr_SetString

对于它的价值,这里是从日志文件中调用链接器:

     C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\link.exe /ERRORREPORT:PROMPT /OUT:"..\..\..\Build\VC11.0\Debug-32bit\PyCAL.pyd" /INCREMENTAL:NO /NOLOGO /LIBPATH:C:\Python27\libs /MANIFEST /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /manifest:embed /DEBUG /PDB:"..\..\..\Build\VC11.0\Debug-32bit\\PyCAL.pdb" /SUBSYSTEM:WINDOWS /LARGEADDRESSAWARE /SWAPRUN:NET /TLBID:1 /DYNAMICBASE /NXCOMPAT /IMPLIB:"..\..\..\Build\VC11.0\Debug-32bit\\PyCAL.lib" /MACHINE:X86 /SAFESEH:NO /DLL "..\..\..\Build\VC11.0\Debug-32bit\obj\PyCAL\Loader.obj"
     "..\..\..\Build\VC11.0\Debug-32bit\obj\PyCAL\PyCAL.obj"

有没有其他人有这方面的经验,可以告诉我我做错了什么?

4

0 回答 0