建议使用Make安装简单Py库的方法

时间:2015-12-28 11:46:36

标签: python module installation

对于我的简单C库,我有一个使用ctypes的简单Python包装器。我正在为我的图书馆写Makefile。在install目标下,我有:

install -m 644 mylib.py $(shell python3 -m site | grep $(PREFIX).*packages | cut -d \' -f2)/

这是我自己设想的。我不想使用distutils或所有那些多个Python安装"解决方案"因为它们对我的简单要求太复杂了:一旦安装了.so文件,我的库可以从Python访问的所有真正需要的是.py接口是正确的{{ 1}} - 能够定位。所以,我想要制作一份简单的副本。

有人预见到我正在做的事情有什么问题吗?如果是这样,有更好的方法吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

通过使用设置工具并将源文件上传到pipy.org,世界上任何人都可以通过输入pip install <yourmodule>来安装项目。

此外,碰巧想要使用你的库的大型Python项目只需要在一行中列出其名称,可以在requirements.txt文件中,也可以在setup.py

上。

如果您的项目不是开源的,并且您不打算让“世界”访问它,那么distutils解决方案 - 不需要引号 - 允许您的项目从私有git存储库获取,甚至是一个热门程序Python“奶酪店”。

如果你绝对不关心使用正确的方法做什么,你可以在README上放一条简单的英文行告诉用户将你的“.py”文件复制到他喜欢的任何文件夹 - 安装不会像Python用户那样预期。

否则,只需要一个极简主义的setup.py文件,并且有一个make行python setup.py install - 它肯定不会受到影响(你的库在使用多个软件包的大型项目中仍然缺乏可用性 - 所有那些项目需要可以安装pip)

极简主义setup.py文件是两个班轮,可以在这里找到: https://docs.python.org/2/distutils/examples.html#pure-python-distribution-by-module - 当然远非“复杂”。