2016-11-30 62 views
1

我想在C++控制台应用程序vs2015中嵌入python代码。我遵循教程https://docs.python.org/3/extending/embedding.html,第一个示例,5.1非常高级嵌入。但是当我建立时(在发布模式下)它显示一个错误:无法解析的外部符号___imp__py_initialize。 我猜错误发生原因我不包括一些.lib或.obj文件,所以我包含python.h和python.lib但我不确定。 (我不擅长英文,所以请原谅我...)在C++ vs2015中嵌入python 3

回答

1

如果您确定已正确设置输入和库目录,则链接器问题的原因可能是您混合了不同位数的代码。确保例如,您没有链接到32位应用程序中的64位版本的Python库。

+0

感谢这个想法为我工作并解决我的问题 – exception

0

“无法解析的外部符号”是一个链接器错误,表示您忘记链接到.lib文件。

的Visual C++项目设置,您需要把Python是(例如Python的3.5):

  • C/C++,一般,其他包括目录:C:\ Python35 \包括
  • 链接,一般,其他库目录:C:\ Python35 \ libs

您不需要手动指定.lib文件,因为pyconfig.h在包含时会自动链接到它。

+0

我试图做你的建议,并得到新的错误: -unresolved外部符号__imp__Py_SetProgramName -unresolved外部符号错误列表__imp__Py_Initialize -unresolved外部符号__imp__Py_DecodeLocale 在文件中的所有上述错误文件是source.obj – exception