在 C++ 中嵌入 Python 时链接到啥

Posted

技术标签:

【中文标题】在 C++ 中嵌入 Python 时链接到啥【英文标题】:What do I link to when embedding Python in C++在 C++ 中嵌入 Python 时链接到什么 【发布时间】:2014-01-21 17:48:23 【问题描述】:

我需要链接到什么,以便我可以使用 Py_Initilize 和 Py_SimpleString 以及 C++ 中的东西?

我在 Windows 7 64 位上使用 vs 2012。我正在编译为 win32(我认为)并且我有 32 位 python33。我确实查看了 Python 文档,但没有任何关于 Windows 编译和链接的信息,仅适用于 linux。

那么我如何链接到python?

是否需要使用外部库将 Python 嵌入到我的 C++ 应用程序中?

我打算使用一个 c++ 应用程序作为启动器,以启动调用不同类/模块的 python 脚本。我还在学习 Python,但我会一些 C++。

【问题讨论】:

【参考方案1】:

您需要在您的 python 安装目录中链接 python33.lib。您还需要将 python install dir/include 目录添加到您的库路径中,以便 #include <Python.h> 工作。

你需要先阅读this,我认为你应该下载python代码并尝试那里的示例(在PC目录下)。

【讨论】:

当你说链接到 python33.dll 时,你的意思是在链接器中>输入我把 python33.lib 和 kernal.lib 之类的所有其他东西放在一起。 是的,你使用包含目录? 我将附加的包含目录设置为 Python33/include,我将附加库目录设置为什么?库还是库?我在链接器>>输入附加依赖项中放入什么 .lib 文件? 附加库是 libs 目录,首先尝试使用 python33.lib。您也应该尝试使用 python 帮助中的示例。 我尝试使用 python33.lib,它给了我这个错误:错误 1 ​​错误 LNK1104: 无法打开文件 'python33_d.lib' D:\Coding and Animation\Workspace\Projects\Embbeding Python In C++ \在 C++ 中嵌入 Python\LINK 在 C++ 中嵌入 Python

以上是关于在 C++ 中嵌入 Python 时链接到啥的主要内容,如果未能解决你的问题,请参考以下文章

在 C++ 中扩展嵌入式 Python - 设计与 C++ 实例交互

[ZT]C++ 扩展和嵌入 Python

在 C++ 中嵌入 Python 在运行时崩溃

在python中使用链接库中的方法时出现属性错误

c++ 中的嵌入式 python 代码 - 导入 python 库时出错

在 C++ VS2015 中嵌入 Python