Search code examples
pipprotocol-buffersarmv7python-wheel

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


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 .


Solution

  • 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