我为一个使用Cython并链接到C库的项目构建了一些轮子。正在为Linux、MacOSX和Windows上的py35-38构建轮子。轮子看起来造得很好,测试也没问题。它们被上传到PyPI (或者在本例中是TestPyPI),但是我在不同的系统上安装的结果不一致。更具体地说,在安装后,我在某些系统上导入软件包时遇到问题。错误为ImportError: No module named 'primesieve._primesieve'
在我遇到问题的那些系统上,由于某种原因,编译后的二进制文件无法安装。当我下载并检查轮子时,它像预期的那样包含了二进制文件。但是由于某些原因,这些二进制文件没有被复制。在安装期间,pip执行的完整详细日志记录没有显示任何有用的信息。
即使在构建轮子的系统和环境中也会发生这种情况。这似乎表明问题不是由于缺乏兼容性或不匹配造成的。
这是一个example轮子。
为什么在安装过程中没有复制二进制文件?
任何帮助都是非常感谢的。
发布于 2019-12-24 23:43:20
事实证明,这是一个用户错误的案例。我从repo目录执行一个命令,然后该命令将从当前目录导入,而不是从已安装的软件包导入,因此无法找到编译后的文件。有关详细信息,请参阅here。
https://stackoverflow.com/questions/59432259
复制相似问题