轮文件:protobuf-3.4.0-py2.py3-none-any.whl 中的“none-any”是啥意思

Posted

技术标签:

【中文标题】轮文件:protobuf-3.4.0-py2.py3-none-any.whl 中的“none-any”是啥意思【英文标题】:Wheel files : What is the meaning of "none-any" in protobuf-3.4.0-py2.py3-none-any.whl轮文件:protobuf-3.4.0-py2.py3-none-any.whl 中的“none-any”是什么意思 【发布时间】:2018-04-05 12:27:45 【问题描述】:

我使用 pip 为 numpy 获取 .whl 文件

pip wheel --wheel-dir=./ numpy

我得到了numpy-1.13.3-cp27-cp27mu-linux_armv7l.whl,因为我使用的是 ARM 平台,但是当为 protobuf 运行 pip 时

pip wheel --wheel-dir=./ protobuf

我收到了protobuf-3.4.0-py2.py3-none-any.whl

那么,为什么linux_armv7l 不像 numpy 的情况,我没有更改机器并搜索了差异但没有信息。

感谢您的建议。

【问题讨论】:

另请参阅:***.com/q/30438216/1959808 用于创建“通用”***(python3 setup.py bdist_wheel 默认创建 py3 ***。python3 setup.py bdist_wheel --universal 会创建 py2.py3 ***,如果可能)。 【参考方案1】:

让我们按组件拆分包名称:

numpy — 包名 1.13.3 — 软件包版本 cp27 — 该包已编译为与此版本的 Python 一起使用 cp27mu — 编译标志 linux — 操作系统 armv7l — 处理器架构

这意味着包numpy 包含用C 编写并针对特定处理器、操作系统和Python 版本编译的二进制扩展。

以下包是纯Python:

protobuf — 名称 3.4.0 — 版本 py2.py3 — 包以高度可移植的方式编写,适用于 Python 的两个主要版本 无 — 不是特定于操作系统的 any — 适合在任何处理器架构上运行

【讨论】:

感谢您的详细回答,但我能否获得 .whl protobuf 文件并针对特定架构(如 ARM7l)? ,或者取决于远程仓库。那个包? 是的,这取决于作者发布的内容。 Google provides 二进制文件仅适用于 amd/intel 处理器上的 64 位 Linux。其余的 pip 下载可移植包并从源代码编译。【参考方案2】:

车轮文件名是distribution-version(-build tag)?-python tag-abi tag-platform tag.whl

分布

发行版名称,例如'django','金字塔'。

版本

发行版,例如1.0.

构建标签

可选的内部版本号。必须以数字开头。如果两个车轮具有相同的版本,则为决胜局。如果未指定,则排序为空字符串,否则排序 初始数字为数字,其余数字按字典顺序排列。

语言实现和版本标签

例如'py27'、'py2'、'py3'。

abi 标签

例如“cp33m”、“abi3”、“无”。

平台标签

例如'linux_x86_64','任何'。

reference is here.

【讨论】:

以上是关于轮文件:protobuf-3.4.0-py2.py3-none-any.whl 中的“none-any”是啥意思的主要内容,如果未能解决你的问题,请参考以下文章

无需轮询即可检测 PHP 中的文件更改

使用 Spring 集成轮询 S3 存储桶以获取文件

rsyslog日志轮循

使用vue实现轮播图

下载了一个轮播效果的css文件,请问怎样搬到淘宝店铺做出轮播效果,谢谢!

如何使用 CUDA 支持构建轮文件?