如何在自己的Python包中结合自己的C扩展名

问题描述

我创建了自己的Python软件包,其中要添加自己的Python C扩展,因为在Python软件包中,我正在导入此C-Ext。 我想从本地文件而不是pypi安装它。 我有C扩展程序的dist文件,我想知道如何正确执行它。我假设我应该在setup.py中进行一些配置。 也许像Extension对象之类的东西,我可以在其中定义自己的包来源?

setuptools.setup(
    ...
    packages=[Extension('ownpackage','/package.tar.gz')],...
)

解决方法

过了一会儿,我找到了答案。只需将源文件添加到项目目录和 setup.py

Extension("c_ext",["module/c_exts/main.c",...]),

然后构建模块。