Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Wheel files : What is the meaning of "none-any" in protobuf-3.4.0-py2.py3-none-any.whl

Tags:

I used pip to get .whl file for numpy

pip wheel --wheel-dir=./ numpy 

and I have got numpy-1.13.3-cp27-cp27mu-linux_armv7l.whl because I am using ARM platform, but when run pip for protobuf

pip wheel --wheel-dir=./ protobuf 

I got protobuf-3.4.0-py2.py3-none-any.whl

So, why isn't linux_armv7l like the case of numpy, I didn't alter the machine and searched for that difference but no information.

thanks for advice .

like image 527
M Y Avatar asked Oct 24 '17 15:10

M Y


People also ask

What is a wheel package in Python?

What Is a Python Wheel? A Python . whl file is essentially a ZIP ( . zip ) archive with a specially crafted filename that tells installers what Python versions and platforms the wheel will support. A wheel is a type of built distribution.


2 Answers

Let's split package names by components:

  • numpy — package name
  • 1.13.3 — package version
  • cp27 — the package was compiled to be used with this version of Python
  • cp27mu — compilation flags
  • linux — operating system
  • armv7l — processor architecture

This means that package numpy contains binary extensions written in C and compiled for specific processor, OS and Python version.

The following package is pure Python:

  • protobuf — name
  • 3.4.0 — version
  • py2.py3 — the package is written in highly portable manner and is suitable for both major versions of Python
  • none — is not OS-specific
  • any — suitable to run on any processor architecture
like image 161
phd Avatar answered Sep 19 '22 17:09

phd


The wheel filename is {distribution}-{version}(-{build tag})?-{python tag}-{abi tag}-{platform tag}.whl.

distribution

Distribution name, e.g. 'django', 'pyramid'.

version

Distribution version, e.g. 1.0.

build tag

Optional build number. Must start with a digit. A tie breaker if two wheels have the same version. Sort as the empty string if unspecified, else sort the initial digits as a number, and the remainder lexicographically.

language implementation and version tag

E.g. 'py27', 'py2', 'py3'.

abi tag

E.g. 'cp33m', 'abi3', 'none'.

platform tag

E.g. 'linux_x86_64', 'any'.

reference is here.

like image 43
wolfhong Avatar answered Sep 23 '22 17:09

wolfhong