Installing SetupTools on 64-bit Windows

StackOverflow

I"m running Python 2.7 on Windows 7 64-bit, and when I run the installer for setuptools it tells me that Python 2.7 is not installed. The specific error message is:

`Python Version 2.7 required which was not found in the registry`

My installed version of Python is:

`Python 2.7 (r27:82525, Jul  4 2010, 07:43:08) [MSC v.1500 64 bit (AMD64)] on win32`

I"m looking at the setuptools site and it doesn"t mention any installers for 64-bit Windows. Have I missed something or do I have to install this from source?

Answer rating: 142

Problem: you have 64-bit Python, and a 32-bit installer. This will cause problems for extension modules.

The reasons why the installer doesn"t finds Python is the transparent 32-bit emulation from Windows 7. 64-bit and 32-bit programs will write to different parts of the Windows registry.

64-bit: HKLM|HKCUSOFTWARE

32-bit: HKLM|HKCUSOFTWAREwow6432node.

This means that the 64-bit Python installer writes to HKLMSOFTWAREPython, but the 32-bit setuptools installer looks at HKLMSOFTWAREwow6432nodePython (this is handled by windows automatically, programs don"t notice). This is expected behavior and not a bug.

Usually, you have these choices:

  • the "clean" way: use 32-bit Python if you have to use 32-bit modules or extensions
  • the other "clean" way: only use 64-bit installers when using 64-bit Python (see below)
  • what the answer above suggests: copy HKLMSOFTWAREPython to HKLMSOFTWAREwow6432nodePython, but this will cause problems with binary distributions, as 64-bit Python can"t load 32-bit compiled modules (do NOT do this!)
  • install pure Python modules with setuptools instead of the distutils installer (easy_install or pip)

For setuptools itself, for example, you can"t use a 32-bit installer for 64-bit Python as it includes binary files. But there"s a 64-bit installer at http://www.lfd.uci.edu/~gohlke/pythonlibs/ (has many installers for other modules too). Nowadays, many packages on PyPi have binary distributions, so you can install them via pip.





Get Solution for free from DataCamp guru