【发布时间】:2020-10-12 08:38:23
【问题描述】:
我安装了一个带有 cython 扩展的 python 模块。现在我正在编写第二个(不同的)cython 模块,它想要从已安装的 cython 模块中导入扩展。但是找不到第一个模块的定义文件。
第一个模块有.../python3.8/site-packages/plexim[version]/EGG-INFO/SOURCES.txt如下:
setup.py
...
plexsim/models.cpp
plexsim/models.pxd
...
看起来不错,因为 pxd 包含在模块中。
在另一个模块中,我想从models.pxd 导入 pxd。但是,当我尝试安装我的其他扩展模块时,它在执行时找不到扩展定义
from plexsim.models cimport *
如何正确打包数据,以便其他模块看到已安装模块的定义?
我的setup.py 看起来很关注
setup(
package_dir = {"" : "imi"
},
namespace_packages = find_namespace_packages (include = ["imi.*"]),
package_data = {"": "*.pxd *.pyx".split(),
ext_modules = cythonize(
exts,
language_level = 3,
compiler_directives = cdirectives,
nthreads = mp.cpu_count(),
),\
谢谢
【问题讨论】:
标签: cython setuptools python-3.8