如何在开发过程中构建 Python CFFI 模块



在开发过程中构建CFFI模块的最佳实践是什么?

现在我正在使用一个制作文件:

mylib/_ffi.so: my_lib/build_ffi.py
    python $<

然后为了测试我可以使用:

$ make && python test.py

但这似乎不是最佳的。在开发过程中是否有更好的构建CFFI模块的方法?

如果项目使用的是 setuptools,则python setup.py develop似乎会就地构建库:

$ python setup.py develop
...
Finished processing dependencies for my-lib==0.1
$ ls my_lib/
_ffi.so
...

但是似乎没有一个等价的make cleansetup.py clean只清理build/目录),所以它不是很理想。

不是一个完整的答案,但对"次优"解决方案的建议改进是将 pytest 的运行添加到 make 文件中,如下所示:

all: mylib/_ffi.so
    /usr/bin/python test.py

这将允许您只运行制作

最新更新