我的pacakge有* .py文件和* .c文件,* .py文件使用ctypes导入共享库 从c源建立。
现在我有问题如何编写我的setup.py。
安装脚本需要将my_c_file.c构建到my_c_file.so,然后将其复制到python libpath。
我想知道'应该'的方式是什么?
答案 0 :(得分:2)
你应该看看Building C and C++ Extensions with distutils。
如果围绕以下示例构建setup.py文件,setuptools应将您的c文件编译为my_c_lib.so并自动将其添加到已安装的软件包中(未经测试)。
from distutils.core import setup, Extension
c_module = Extension('my_c_lib',
sources = ['my_c_file.c'])
setup (name = 'my_package',
version = '1.0',
description = 'This is a package in which I compile a C library.',
ext_modules = [c_module])