pip 没有安装 Cython 源文件

pip not installing Cython source files

我的包中有一个 *.pyx (Cython) 源文件,但当我 运行:

时它没有包含在源代码分发中
$ python3 setup.py sdist

因此,我添加了一个 MANIFEST.in 文件来包含所有 *.pyx 文件。我的包要求将 Cython 指定为要求:因此我的所有用户都将安装 Cython。在其他包中,我使用 pyximport:

import pyximport; pyximport.install(language_level=3)
from mycythonpackage.mycythonmodule import *

现在,当我 运行 sdist 时,我正确地看到了压缩包中打包的 *.pyx 文件。但是,当我将 tarball 解压到一个文件夹,然后执行:

$ sudo pip3 install .

安装顺利进行。但是 pyx 文件没有安装,因此,当我 运行 我的包找不到 Cython 模块时。

我的包中的 including/installing pyx 文件将解决我的问题,因为我希望我的用户按原样 运行 我的包,Cython 将即时编译它们。我不想 compile/build pyx 文件,也不想 want/need 打包 .so / .c / ... 文件。我只想安装普通的 *.pyx 文件。我如何指示 pip 在安装过程中强制 include/install *.pyx 文件?

我找到了解决方案:修改 setup.py 文件以包含:

package_data = { 'mypackage': ['mycythonmodule-filename.pyx']},
include_package_data = True