我的 pacakge 有 *.py 文件和 *.c 文件,*.py 文件使用 ctypes 导入从 c 源构建的共享库。
现在我有问题如何编写我的 setup.py。
安装脚本需要将 my_c_file.c 构建到 my_c_file.so,然后将其复制到 python libpath。
我想知道“应该”的方式是什么?
我的 pacakge 有 *.py 文件和 *.c 文件,*.py 文件使用 ctypes 导入从 c 源构建的共享库。
现在我有问题如何编写我的 setup.py。
安装脚本需要将 my_c_file.c 构建到 my_c_file.so,然后将其复制到 python libpath。
我想知道“应该”的方式是什么?
您可能应该看看使用 distutils 构建 C 和 C++ 扩展。
如果您围绕下面的示例构建 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])