Search code examples
pythontensorflowpippython-wheelnvidia-jetson

tensorflow...whl is not a supported wheel on this platform although PEP425 tags seem correct


So I am getting "not a supported wheel on this platform" message even though I have installed earlier versions of these wheels from the same repository. Dump:

nvidia@tegra-ubuntu:~/Downloads$ sudo -H pip install tensorflow-1.8.0-cp27-cp27mu-linux_aarch64.whl
tensorflow-1.8.0-cp27-cp27mu-linux_aarch64.whl is not a supported wheel on this platform.

Digging a little deeper I dumped the PEP supported tags.

nvidia@tegra-ubuntu:~/Downloads$ python -c "from pip import pep425tags;print(pep425tags.supported_tags)"
[('cp27', 'cp27mu', 'linux_aarch64'), ('cp27', 'none', 'linux_aarch64'), ('py2', 'none', 'linux_aarch64'), ('cp27', 'none', 'any'), ('cp2', 'none', 'any'), ('py27', 'none', 'any'), ('py2', 'none', 'any'), ('py26', 'none', 'any'), ('py25', 'none', 'any'), ('py24', 'none', 'any'), ('py23', 'none', 'any'), ('py22', 'none', 'any'), ('py21', 'none', 'any'), ('py20', 'none', 'any')]

The wheel file name seems to match the very first tag (PEP 425 standard), so as far as I can tell it should install it. Maybe the definitive tags are stored internally and are different? But I could not find a utility to dump them from a wheel, and I also get the same error message when I try on the old 1.6 wheel that I successfully installed a few months back.

I am thinking something broke when I upgraded my pip to version 10 yesterday (duh... but that pesky message kept coming up), but then the dumped supported tags should have changed then too.

I don't really want to flatten this machine which would surely fix this. Anyone have some ideas how I can get pip to install this wheel?

More information on how pip finds the tags (does it really just look at the file name?) would help as well. I tried messing with the tags in the name and that did not change a thing.

Update:

I am running Linux4Tegra on a Nvidia Jetson TX2 - Jetpack 3.2 - it seems L4T is very Ubuntu-like, I am guessing it is kind of based on that.

Here is the uname output:

nvidia@tegra-ubuntu:~/Downloads$ uname -a
Linux tegra-ubuntu 4.4.38-tegra #1 SMP PREEMPT Fri Dec 1 06:08:28 PST 2017 aarch64 aarch64 aarch64 GNU/Linux

Solution

  • Following a suggestion I received here, I reinstalled pip from bootstrap.pypa.io which is more authoritative (I think) than whatever apt-get finds and then it worked fine. Too bad in a way, would have liked to know what was broken. But at least I can on with TensorFlowing...

    This is what worked:

    $ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
    $ sudo python get.pip.py
    

    Docs here: https://pip.pypa.io/en/stable/installing/