如何最好地将C++/Cython项目编译成可执行文件?

2024-05-28 20:09:39 发布

您现在位置:Python中文网/ 问答频道 /正文

<>我有一个C++和Python/Cython文件的项目。直到现在,我才初步开发C++部分,并用QGub编译成一个静态库。一些方法通过boost::python公开,并从.py文件执行。在

我现在想把整个过程编译成一个独立的可执行文件。在

我现在的问题是:最好的方法是什么?我试图切换到Cython,编译python文件并链接库。但似乎没有直接的方法来处理distutils/设置.py只能编译共享库。在

有没有一种方法可以轻松地同时将.cpp和.pyx文件编译成可执行文件?在

这样我就可以摆脱很多boost::python包装器的东西,获得c++/python的完美组合,而不必导入共享库并用pyinstaller打包所有东西?在


Tags: 文件项目方法py可执行文件过程静态cpp
1条回答
网友
1楼 · 发布于 2024-05-28 20:09:39

你应该调查:

由于python是您的入口点,您将能够将独立的解释器、环境和资源位置绑定到app/exe/binary中。它将把你所有的库模块收集到它的独立站点包中

如果您不使用任何普通的纯py文件,并且只有cython文件,那么还可以在其中一个文件中嵌入一个解释器,作为带有cython嵌入标志的入口点: http://wiki.cython.org/EmbeddingCython
请注意,这是一种类似于前面提到的打包选项的“冻结”方法,但是没有额外增加构建一个自包含的env的长度

相关问题 更多 >

    热门问题