正在转换/某人/其他人的/。焦油gz打包到a.whl?

2024-06-16 14:24:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我面对的Docker构建过程非常缓慢,部分原因是我们反复构建和安装的所有Python包。我很想加快速度。在

我已经从PyPI下载了这些软件包,这样我就可以好好看看它们了。我还将它们放在一个本地pypiserver(实际上是两个),并确认可以从那里安装它们。在

软件包的扩展名为:

87 .whl    ............................................................
23 .tar.gz ................
 2 .zip    .

我在想这些。焦油gz's(和.zip's?以及来源。什么?)如果我把它们转换成manylinux wheels,并把它们放在一个版本号相同的本地pypiserver实例中,安装速度会快得多。事实上,一个包往往会随机编译失败,因此如果成功的话,构建过程也应该更可靠一些。在

有没有(相对的?)做这种事情的直接过程?也就是说,拿一个。焦油gz从pypi(不是一个任意的。焦油gz-并将其转换为二进制manylinux.whl?在

例如,在我们的docker构建中,最耗时的包可能是https://pypi.org/project/pycapnp/在我的linuxmint19.1笔记本电脑上构建和安装大约需要80秒。这是一个。焦油gz. 在

谢谢!在


Tags: dockerpypi过程来源原因tarzipwheels
2条回答

这样做的方法是下载并提取兼容manylinux Docker image(这取决于您要目标的体系结构)中的源分发(^{cd1>}),然后使用^{{cd2>}构建车轮。

https://github.com/pypa/python-manylinux-demo有一个演示项目,它展示了如何使用CI自动执行此操作,您可能会对此进行调整,甚至将其贡献回未发布构建发行版(wheels)的项目。

我相信用^{}应该很简单。在

相关问题 更多 >