56
votes

I am trying to install numpy from whl file. I get the error:

numpy-1.9.1%2Bmkl-cp34-none-win_amd64.whl is not a supported wheel on this platform.

Details: Windows 8.1 pro x64, elevated command prompt

Python 3.4.2

package numpy from Gohlke's site

numpy-1.9.1%2Bmkl-cp34-none-win_amd64.whl copied in the pip.exe folder

The log file shows:


d:\Program Files\WinPython-64bit-3.4.2.4\python-3.4.2.amd64\Scripts\pip run on 01/23/15 11:55:21 numpy-1.9.1%2Bmkl-cp34-none-win_amd64.whl is not a supported wheel on this platform. Exception information: Traceback (most recent call last): File "D:\Python34\lib\site-packages\pip\basecommand.py", line 122, in main status = self.run(options, args) File "D:\Python34\lib\site-packages\pip\commands\install.py", line 257, in run InstallRequirement.from_line(name, None)) File "D:\Python34\lib\site-packages\pip\req.py", line 167, in from_line raise UnsupportedWheel("%s is not a supported wheel on this platform." % wheel.filename) pip.exceptions.UnsupportedWheel: numpy-1.9.1%2Bmkl-cp34-none-win_amd64.whl is not a supported wheel on this platform.

What is wrong?

10
Could you open python and run import pip; print(pip.pep425tags.get_supported())?Simeon Visser
[('cp34', 'none', 'win32'), ('cp34', 'none', 'any'), ('cp3', 'none', 'any'), ('cp33', 'none', 'any'), ('cp32', 'none', 'any'), ('cp31', 'none', 'any'), ('cp30', 'none', 'any'), ('py34', 'none', 'any'), ('py3', 'none', 'any'), ('py33', 'none', 'any'), ('py32', 'none', 'any'), ('py31', 'none', 'any'), ('py30', 'none', 'any')]lmsasu
It doesn't seem to have the tags in the filename of the .whl so perhaps this file isn't for your platform?Simeon Visser
What do you get when you run import platform; print(platform.platform())? Perhaps your system isn't being detected properly as 64-bit.Simeon Visser
It reports: Windows-8-6.2.9200lmsasu

10 Answers

80
votes

Short answer: rename the file to numpy-1.9.1%2Bmkl-cp34-none-win32.whl to install it.

You can check what tags your pip tool accepts for installation by running:

import pip; print(pip.pep425tags.get_supported())

In this case pip is incorrectly detecting your operating system to be 32-bits and the file you're trying to install was win_amd64 in its filename.

If you rename the file to numpy-1.9.1%2Bmkl-cp34-none-win32.whl (which now contains the tags that are considered supported) then you can install the package. It's a trick because the file is still built for 64-bits but this allows you to install the package as intended.

17
votes

After several tests I think the problem is "win32" or "amd64" itself. I tried replacing those two with "any" and it worked.

I'm pretty much a newbie on these kind of installation/compilation thing, so excuse me if I misled anyone, just thought that if it worked for me, it might work for someone else.

9
votes

In my case workaround to install gohlke packages on python (3.4.4 (AMD64)) was to change the "cp34m" part rather than "win*" parts above:

python -c "import pip; print(pip.pep425tags.get_supported())":

[('cp34', 'none', 'win_amd64'), ('py3', 'none', 'win_amd64'), 
('cp34', 'none', 'any'), ...

ls -ld *:

matplotlib-2.0.0b3-cp34-cp34m-win_amd64.whl
numpy-1.11.1+mkl-cp34-cp34m-win_amd64.whl
pandas-0.18.1-cp34-cp34m-win_amd64.whl

Change above names to:

matplotlib-2.0.0b3-cp34-none-win_amd64.whl
numpy-1.11.1+mkl-cp34-none-win_amd64.whl
pandas-0.18.1-cp34-none-win_amd64.whl

eg, pip install matplotlib-2.0.0b3-cp34-none-win_amd64.whl

Processing ...
...Successfully installed matplotlib-2.0.0b3
6
votes

To add to the list of other possible solutions, I had to upgrade pip itself. The latest binary from Gholke's site had the "cp27m" tag, which didn't show up when I checked the pip tags using:

import pip; print(pip.pep425tags.get_supported())

After I upgraded pip, the wheel didn't work but just doing a regular pip install numpy worked

3
votes

If you have, say, Python 3.4 installed, make sure to install the -cp34- version of the wheel and not -cp35-.

2
votes

The current Winpython Package Manager need a 2-characters fix to accept to recognize the new numpy+mkl 'wheel'. https://github.com/stonebig/winpython/commit/5e13230609a2e9f4d66d98c3776207ce4b4dd050

2
votes

As a workaround, uninstall numpy package: pip uninstall numpy then install it again from cache: pip install numpy I had the same problem with several packages after upgrade from 3.4.1 to 3.4.2.

2
votes

Navigate to the directory where your 'pip.py' sits and then type following on win command '..\python.exe pip.py install name_of_package.whl'. This should work.

2
votes

I had the same problem tried to work out with the suggested solutions. I changed win64 to win32 and it didn't work as well. But then I changed the name to original and this time it worked! The only extra thing I did was to go offline.that's so strange.

1
votes

This has nothing to do with your operating system. Uninstall Python 32bit and install Python 64bit rather or alternatively find a 32bit wheel file.