正如标题所示,我有一台运行 mac os 的计算机,其中有一个 python 项目。我有一台没有互联网的 Windows 计算机,带有 Python 3.6 和 pip。
相关项目依赖于几个 pip 包依赖项。是否有办法将所有内容打包在一起,以便该项目可以在没有互联网的 Windows 计算机上运行?
最佳答案
在某种程度上 pip
允许下载具有不同平台依赖项的包。尝试一下
pip download --only-binary=:all: --platform win_amd64 --implementation cp --python-version=3.6 --abi=cp36m 'put-your-package-name-here'
如果包及其所有依赖项提供二进制轮子,pip
会将它们全部下载到当前目录中。将它们移至离线计算机并在那里运行
pip install --find-links=\path\to\wheels\directory 'your-package'
如果包及其所有依赖项仅提供源代码分发尝试
pip download --only-binary=:none: --platform win_amd64 --implementation cp --python-version=3.6 --abi=cp36m 'your-package'
但是,如果包和依赖项混合在一起——有些有二进制轮子,有些只有 sdists——pip
无法下载依赖项。对于这种情况没有解决办法。唯一的解决方法是在 MacOS 上运行 Windows — 在模拟器或容器中。
win_amd64
作为示例。如果您有 32 位 Windows,或者如果您在 64 位 Windows 上有 32 位 Python — 请使用平台 win32
。
关于python - 将 Python 项目及其依赖项打包到另一台没有互联网和不同操作系统的机器上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59400916/