分发使用自定义c模块扩展的python程序的最佳方法是什么?

时间:2008-11-17 02:43:22

标签: python c linux macos software-distribution

我已经探索了几年的python,但现在我正在慢慢学习如何使用c。使用python documentation,我学习了如何用一些c来扩展我的python程序,因为这似乎是开始使用它的合理方式。我现在的问题是如何分发这样的程序。

我想我的问题的核心是如何编译东西。我可以在我自己的机器(gentoo)上轻松完成这项工作,但是像Ubuntu这样的二​​进制发行版可能没有默认的编译器。另外,我有几个朋友是mac用户。我的直觉说我不能用我自己的机器编译然后在另一台机器上运行它。任何人都知道我能做什么,或者一些在线资源来学习这样的东西?

2 个答案:

答案 0 :(得分:6)

请阅读distutils。具体来说,就Extension Modules

部分

对编译器做出假设是不好的政策;你的直觉可能没有所有的事实。您可以进行一些市场调查 - 询问他们可以处理有关扩展模块的源分发的内容。

创建适当的distutils setup.py并查看谁可以运行它以及谁不能运行它是相对容易的。

构建的二进制分发很常见。也许你可以注册一些用户将帮助创建二进制发行版 - 使用OS本机安装程序 - 出于某些考虑。

答案 1 :(得分:1)

S上。洛特是对的。你应该先看看distutils。在您从distutils中了解了所需内容后,请查看setuptools。 Setuptools构建于distutils之上,使您的用户可以轻松安装。你曾经使用过easy_install或Python Eggs吗?这就是接下来的事情。