Pip 轮锉:“轮锉”是什么意思;“无任何”;在protobuf-3.4.0-py2.py3-none-any.whl中

Pip 轮锉:“轮锉”是什么意思;“无任何”;在protobuf-3.4.0-py2.py3-none-any.whl中,pip,protocol-buffers,armv7,python-wheel,Pip,Protocol Buffers,Armv7,Python Wheel,我使用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 那么,为什么不像numpy的情况那样linux\u armv7l,我没有改变机器并搜索差异

我使用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

那么,为什么不像numpy的情况那样
linux\u armv7l
,我没有改变机器并搜索差异,但没有任何信息


感谢您的建议。

让我们按组件拆分包名:

  • numpy-包名称
  • 1.13.3-软件包版本
  • cp27-该包被编译为与此版本的Python一起使用
  • cp27mu-编译标志
  • linux操作系统
  • armv7l-处理器体系结构
这意味着包
numpy
包含用
C
编写并针对特定处理器、操作系统和Python版本编译的二进制扩展

以下软件包是纯Python的:

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

控制盘文件名是
{distribution}-{version}({build tag})?-{python tag}-{abi tag}-{platform tag}.whl

分布 分发名称,例如“django”、“pyramid”

版本 分发版本,例如1.0

构建标签 可选的内部版本号。必须以数字开头。如果两个车轮版本相同,则为平局断路器。如果未指定,则按空字符串排序,否则按 初始数字为数字,其余数字按字典顺序排列

语言实现和版本标记 例如,“py27”、“py2”、“py3”

abi标签 例如,“cp33m”、“abi3”、“无”

平台标签 例如,“linux\U x86\U 64”、“任何”


谢谢您的详细回答,但是我可以获得protobuf的.whl文件吗?该文件针对特定的体系结构,如ARM7l,或者取决于远程回购。是的,这取决于作者发表了什么。谷歌二进制文件仅适用于amd/intel处理器上的64位Linux。对于其余的
pip
下载便携包并从源代码处编译。另请参阅:对于创建“通用”控制盘(
python3 setup.py bdist_wheel
默认创建
py3
控制盘。
python3 setup.py bdist_控制盘--universal
创建
py2.py3
控制盘,如果可能)。