5

我的 pacakge 有 *.py 文件和 *.c 文件,*.py 文件使用 ctypes 导入从 c 源构建的共享库。

现在我有问题如何编写我的 setup.py。

安装脚本需要将 my_c_file.c 构建到 my_c_file.so,然后将其复制到 python libpath。

我想知道“应该”的方式是什么?

4

1 回答 1

3

您可能应该看看使用 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])
于 2014-01-08T19:43:29.793 回答