在Visual Studio 2005中链接Python导入库

8
我有一个嵌入了Python的C++应用程序,使用Visual Studio 2005构建。当我尝试链接到python26.lib时,会出现许多未解决的符号,所有这些符号都以“__imp”开头:
错误LNK2019:无法解析的外部符号__imp__Py_Initialize,在函数_main中引用 python26.lib是一个导入库(由Python 2.6安装程序安装)。我需要做什么来解决这些符号?它们确实存在于导入库中(dumpbin /all显示它们)。谢谢。
2个回答

13

看起来我在试图将一个64位的Python库链接到32位应用程序中。我希望链接器能告诉我其他信息而不是"未解决的符号"。将链接改为32位库可以解决该问题。


2
尝试将 C:\WINDOWS\system32\python26.dll 包含在您的参考中。 python26.lib 包含主 DLL 的符号名称。

1
我认为你不应该直接链接到dll,而是链接到相应的.lib文件。当我尝试直接链接到python26.dll时,会出现链接器错误(LNK1107:无效或损坏的文件)。根据MSDN的说法,如果将dll传递给链接器而不是.obj,则可能会出现此错误。 - user76293

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接