将python包分发到脱机计算机

时间:2018-04-03 17:07:07

标签: python pip python-wheel

假设我有两台机器。

macOS 10.13 with internet connection 
macOS 10.12 with no network connection

我想通过滚轮安装readline(例如)。

我可以轻松抓住方向盘:

pip wheel -w . readline

我得到的是:

readline-6.2.4.1-cp36-cp36m-macosx_10_13_x86_64.whl

然而,当我把这个轮子放在10.12机器上并尝试安装时:

pip install --no-index --find-links . readline

它将无法安装,因为文件名标记为10.13。

当然,当互联网连接的机器或离线机器运行Ubuntu时,情况可能会变得复杂一些。

有没有办法让pip为特定目标操作系统的特定车轮?

处理此问题的标准方法是运行'pip wheel -w。在最终将安装它的操作系统的操作系统上的readline'

1 个答案:

答案 0 :(得分:1)

  

处理此问题的标准方法是在最终安装它的操作系统的操作系统上运行'pip wheel'吗?

是。为许多体系结构发布二进制包的人运行一系列具有大量仿真处理器体系结构和操作系统的虚拟机或容器。

对于免费软件,您可以在商业CI上使用免费软件。在Travis CI,您可以在AppVeyor for w32。

为Linux和Mac OS X生成轮子

有关帮助为不同平台构建轮子的程序示例,请参阅https://pypi.python.org/pypi/cibuildwheelhttps://github.com/matthew-brett/multibuild