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

str*_*551 1 c python linux macos software-distribution

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

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

S.L*_*ott 6

请阅读distutils.具体来说,扩展模块部分.

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

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

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