我正在开发一个专有的Python库。该库目前仅限Windows,我还希望它可用于其他平台(Linux和Mac)。
该库目前以Zip文件的形式发送给(付费)客户。此存档包含用于实现库的已编译Python代码以及所有依赖项。通过将Zip文件放在他的PYTHONPATH上,客户可以使用他的Python脚本中的库。
发送包含所有依赖项的Zip文件具有以下优点:
它还有一个缺点,即客户不能(轻松)使用他自己版本的库依赖项。
即使我没有生成EXE,我使用py2exe来获取我的库的可分发Zip文件。这个“hack”非常方便,因为py2exe允许我简单地说出我需要哪些包,并为我执行所需库的依赖性分析。 py2exe使用我的(已编译的)库代码和所有依赖项自动生成Zip文件。
不幸的是,py2exe仅适用于Windows。我还需要能够在Linux和Linux上构建它。 Mac,因此将构建过程更改为不使用py2exe。
我的问题是:
我对Python中关于这些问题的最新技术的见解是有限的,所以我希望得到更多有关该主题经验的人的建议。
一个严格的要求是我只能发送我的库的二进制发行版,因为这是一个专有产品。我查看了Distutils和Setuptools,推荐的方法似乎是简单地发送所有来源。
非常感谢!