如何将具有多个依赖项的C库编译到Python包中? CMake的?

时间:2018-06-05 21:30:09

标签: python python-3.x pip ctypes python-packaging

我在python3.x中有一个Python包我一直在写,它与C库中的两个C函数交互。目前,我一直在使用ctypes,我直接链接到共享库*.so,然后使用python脚本与此进行交互。

https://docs.python.org/3/library/ctypes.html#module-ctypes

我现在很困惑如何分发这个python包,用户可以在github上或通过pip安装python包。不知何故,在安装时,需要下载,解压缩和编译C库。

问题是,C库包含几个与其他C库的依赖关系;我目前静态链接这些库,现在整个C库通过cmake安装。

(1)是否可以通过cmake安装现在安装的C库?看来这应该完全在setup.py完成,对吗?

(2)在这种情况下,我对distutils / setuptools问题感到困惑。根据此链接https://docs.python.org/3/extending/building.html#building

正确的方法是通过distutils,而不是setuptools。但是,setuptools通常是在2018年创建/分发python包的推荐方法。上面的文档是否过时了?

0 个答案:

没有答案