0

我有一个来自 Windows 的 C++ 应用程序,我希望将其移植到 Red Hat Linux 系统上运行。这个应用程序嵌入了一个稍微修改过的 Python 2.7.3 版本(我添加了 Py_SetPath 命令,因为它对我的用例来说是必不可少的)所以我肯定需要编译 Python 源代码。

我的问题是,尽管看起来,我实际上找不到任何指导,说明如何让 Python 发出正确的文件供我链接,以及如何让 g++ 以我不这样做的方式链接我的 C++ 代码不需要在我将其分发到的每个系统上都安装 Python 副本。

所以我的问题是:

  • 如何编译 Python 以便它可以嵌入到 Linux 上的 C++ 应用程序中?
  • 我在链接什么以使 C++ 应用程序正常工作?

很抱歉这些基本问题,但在说服我的雇主让我尝试将我们的系统迁移到 Linux 之后,我渴望让它尽可能顺利地运行,我担心没有取得太大进展!

4

1 回答 1

1

你想链接到 python 静态库,它应该被默认创建并被调用libpython2.7.a

如果我没记错的话,只要您不使用它构建 Python--enable-shared就不会安装动态库,因此您只会获得静态库,因此只需将您的 C++ 应用程序-lpython2.7 -L/path/where/you/installed/python/lib链接到静态库即可。

于 2013-01-18T01:10:08.973 回答