问题标签 [python-wheel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1146 浏览

python - 从一个主机操作系统为不同的操作系统创建不同的轮子

我有一个包,其中包含五种不同操作系统和架构组合的二进制文件:Windows 32 和 64 位、Linux 32 和 64 位以及 OS X(胖)。的内容setup.py可以在这里找到。

我知道可以(并且确实更可取)将特定于平台的轮子上传到 PyPI,而不是上传一个包含所有平台的二进制文件的轮子,甚至是源代码分发,后者我不能这样做,因为一些二进制文件是专有的(但可再分发)。

我的问题是,我将如何为每个平台创建单独的轮子?具体来说:

  • 我可以在一个目录中使用多个设置脚本,具有不同的文件名和package_data
  • 我可以自动创建带有指示预期操作系统和架构的文件名的轮子吗?
  • 如果没有,我可以手动更改文件名来执行此操作吗?

请注意,在建立 Linux 轮子的命名约定之前,我目前不打算维护单独的轮子。

0 投票
0 回答
250 浏览

python - 具有捆绑依赖项的跨平台包

我需要一种简单的方法来分发包含所有依赖项的 Python 项目。我想要 PyInstaller 之类的东西:我需要为每个用户分发相同的跨平台包。在每个操作系统上重新编译不是一种选择。

当复制并安装到另一个系统中时,应该从包中获取依赖项(而不是例如从 Internet)。理想情况下,它们应该安装到相对于该软件包的隔离环境中。

可能吗?

对于那些了解 Ruby 的人:

在 Ruby 中,使用 Bundler,运行bundle package --all-platforms会将我的所有依赖项复制到./vendor/cache/项目文件夹中。

然后,在另一台机器上,我可以运行bundle install --deployment并将依赖项安装./vendor/cache到本地./vendor/bundle路径。

我正在寻找一个类似的过程,使用 Python。

0 投票
1 回答
79 浏览

python - 使用 hg archive vs wheel 生成可安装的 python 模块

我想知道我是否会使用以下方法发布我的 python 模块:

  1. hg 存档sourceforge下载
  2. 轮子PyPy托管

我已经使用 1 多年了,但我认为正确的 pythonic 方法是 2

有什么建议吗?

wheel 需要 pip、wheel、setuptools……与简单的 tar 提取和 setup.py 安装相比,简单的模块看起来相当复杂。另一方面,现在似乎需要点/轮?

0 投票
1 回答
2097 浏览

python - setup.py 不为 install_requires 开发使用轮子吗?

我的印象是(使用 setuptools):

安装所需的软件包时不会使用轮子(在 install_requires 中指定)。

问题:

  1. 我的印象正确吗?
  2. 有没有办法强制它使用轮子?

我说的是这个特定的设置脚本

0 投票
1 回答
347 浏览

python - 我无法在 Django 项目的虚拟环境中安装 django-allauth?

我在 python 项目中使用虚拟环境。我可以轻松地在其中安装 Django。最初,当我输入“pip freeze”命令时,结果如下 -

现在,当我使用 pip 安装 django-allauth 时,这些错误就会抛出 -

我想这与我创建虚拟环境时预装的 Wheels 包有关,但我不知道如何解决它。

0 投票
1 回答
1478 浏览

python - 为什么我安装后无法在 python 中导入 Pyqt?

我对 Python 非常陌生,现在我很难安装 PyQt 和 PyQwt。

我搜索了许多站点的操作方法,但我仍然无法摆脱这个问题。现在我决定跟随Christoph Gohlke 的. 我成功地使用 pip 安装了 numpy wheel 文件并可以在 python 中导入它,但它不适用于 PyQt 和 PyQwt。

对于 PyQt,当我通过 cmd 安装轮文件时

看来

我认为安装可能成功,所以我尝试在 Python2.7 中导入 PyQt4

但它失败并出现错误

我还在“脚本”目录中调用 pip.exe,如https://stackoverflow.com/a/27909082/5041101所说,但它仍然相同。请帮我摆脱困境。

谢谢

0 投票
1 回答
677 浏览

python - 安装包时指定轮缓存

随着 Python 的轮子的引入,我现在看到构建的轮子被缓存在我的主目录的缓存中:

我想知道:

  1. 有没有办法在不造轮子的情况下安装项目?(我知道我可以简单地从我的系统中移除轮子)
  2. 有没有办法指定这个缓存的位置?
0 投票
1 回答
247 浏览

python - pip 从 PyPI 中选择非特定轮子

我的包 .airship-steamcloud位于 PyPI 上,我为 Windows(32 位和 64 位)和 OS X 生成了三个轮子,以及一个包含每个平台的所有二进制文件的轮子。但是,每当我pip在运行 OS X 的计算机上安装它时,它都会下载非特定的轮子:

这是轮子命名方式的问题吗?

车轮列表可在此处获得。我用这个脚本生成它们。

0 投票
0 回答
376 浏览

python - Python无法识别手动安装的轮子

一些同事给了我一个轮子文件。我使用 pip 安装它:

当我跑步时

包裹显示得很好。此外,在 C:\WinPython2_7_10_1\python-2.7.10\Lib\site-packages 中有一个包含该包的文件夹

问题是我无法在代码中导入它。eclipse 中的 PyDev 没有找到。

给我一个错误

怎么了?是我的安装还是我的同事生成了一个错误的轮子?

我试图重新加载 PyDev Interpleter,更改名称,一切都没有成功。

obs:我正在使用带有 PyDev 的 WinPython 2.7.10

0 投票
2 回答
23201 浏览

python - Python 打包:轮子 vs tarball (tar.gz)

轮子相对于鸡蛋的优势是显而易见的(请参阅为什么不鸡蛋?https://pypi.python.org/pypi/wheel部分)。

但是,我并不完全清楚使用轮子的优势是什么tar.gz。我可能会遗漏一些明显的东西,比如“它们是一样的”。正如我所看到的,它们都可以直接使用pip(即使在 Windows 中)安装,具有相似的大小,并且在打包时需要类似的努力。在我看来,这听起来像是你在证明包装方法论时可能会遇到的那种问题。

编辑:刚刚找到一个tar.gz可能比轮子更好的例子。CherryPy ( https://pypi.python.org/pypi/CherryPy ) 只为 Python 3.x 提供轮子,所以如果你想有一个本地存储库来为 Python 2.7 和 3.x 依赖项提供 CherryPy,它似乎使存储 tarball 更有意义。这个对吗?(只是为了在讨论中添加一些“基于案例”的理由)