0

使用 Pascal 开发 Python 模块教程之后,我能够使用出色的Free Pascal 编译器在 Windows 上的 object pascal 中创建一个 python 模块。

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

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

还是我应该只分发二进制文件?Free Pascal 支持一堆编译目标,因此交叉编译二进制文件没有问题。在 PyPI 上为 windows 分发二进制文件是完全正常的,但是其他平台呢?

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


PS:听起来不像是商业广告,而是为了回答不可避免的问题,“为什么不直接用 C 来写?” 我只能说,在 C 和 pyrex/Cython 中编写了扩展,free pascal 是迄今为止我所拥有的最简单的时间,而且我非常乐意跳过几个圈来使用它。

4

3 回答 3

1

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

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

于 2012-07-21T03:17:33.673 回答
1

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

于 2012-08-19T03:57:13.210 回答
0

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

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

于 2012-08-20T00:55:24.813 回答