如何使用setuptools构建.egg时包含.so文件

时间:2017-07-10 14:00:20

标签: python setuptools

如何构建.egg文件包含' .so'文件?

这是我的文件树: --setup.py --__init__.py --mcpack.py` --mcpack.so

如何在其中创建包含mcpack.so的包?

我已经尝试使用pack_data,但事实证明.so文件是打包的,但在python文件中找不到。

1 个答案:

答案 0 :(得分:2)

将其放入native_libs.txt并使用bdist_egg制作鸡蛋,请参阅this section of the documentation。但是,您应该切换到wheels而不是鸡蛋。

如果您可以保证用于构建.so的完全相同的工具链也存在于将要运行它的每个其他分发中,那么共享对象文件是可分发的 - 这是非常不可能的并且会破坏egg文件的可分发性,除非你真的只想定位特定版本的Linux发行版。

如果您的鸡蛋安装在除了.so之外的任何其他分发中,将无法使用。

如果您想构建一个包含本机代码的可分发包,请查看wheel files以及可以分发到所有Linux操作系统的轮子,请查看manylinux