安装包含二进制文件的轮子时出现问题



我为一个使用 Cython 的项目构建了一些轮子,并链接到一个 C 库。 轮子正在Linux,MacOSX和Windows上为py35-38构建。 车轮似乎构造良好,测试正常。 它们被上传到 PyPI(或在本例中为 TestPyPI(,但我在各种系统上安装的结果不一致。 更具体地说,安装后,我在某些系统上导入软件包时遇到问题。 错误ImportError: No module named 'primesieve._primesieve'

在我遇到问题的那些系统上,由于某种原因,编译的二进制文件没有安装。 当我下载并检查轮子时,它按预期包含二进制文件。 但由于某种原因,这些二进制文件没有被复制。 在安装过程中通过 pip 进行的完整详细日志记录没有发现任何有用的信息。

即使在制造车轮的系统和环境中也会发生这种情况。 这似乎表明问题不是由于缺乏兼容性或不匹配造成的。

这是一个示例轮子。

为什么在安装过程中不复制二进制文件?

任何帮助都非常感谢。

事实证明,这是用户错误的情况。 我正在从 repo 目录执行命令,然后该命令将从当前目录而不是从已安装的包导入,因此找不到编译的文件。 有关更多信息,请参阅此处。

最新更新