PyPI:我如何测试和分发用free pascal编写的本机python扩展(没有任何C代码)?

时间:2012-07-21 03:15:50

标签: python freepascal pypi

Developing Python Modules With Pascal教程之后,我能够在窗口上使用优秀的Free Pascal compiler在对象pascal中创建一个python模块。

问题是:我应该如何分发未使用标准C工具链编译的本机代码模块?

我应该要求用户安装Free Pascal吗?如果是这样,我如何说服distutils调用它?

或者我应该只分发二进制文件? Free Pascal支持bunch of compilation targets,因此交叉编译二进制文件没问题。在PyPI上为Windows分发二进制文件是完全正常的,但其他平台呢?

无论哪种方式:我如何在所有这些平台上测试模块?


PS:听起来不像商业广告,但为了回应不可避免的问题,“为什么不用C写呢?”所有我能说的是在C和pyrex / Cython中都有书面扩展,免费pascal是迄今为止我用过的最简单的时间,而且我很乐意通过一些箍来使用它。

3 个答案:

答案 0 :(得分:1)

绝对分发二进制套件。我怀疑人们是否愿意安装Free Pascal。

要在许多平台上测试模块,最好的选择是使用VirtualBox在您自己的开发机器上运行这些操作系统。

答案 1 :(得分:1)

只需分发二进制文件,只要模块没有链接到太具体的python库,你就可以了。即:尝试使用linklib python而不是libpython2.7.so.1.2.3.whatever

答案 2 :(得分:0)

回想起来,这不是一个好问题。

最适合我的特定情况的答案是将系统视为应用程序而不是模块,并将应用程序本身作为二进制文件分发。