У меня была эта проблема с использованием Python 3.4.1 на Windows 7 x64 , и, к сожалению, в необходимых мне пакетах не было подходящего exe или колесика, которые я мог бы использовать. Эта система требует нескольких «обходных путей», которые подробно описаны ниже (и TLDR внизу ).
Используя информацию из ответа Jaxrtech выше , я определил, что мне нужна Visual Studio C ++ 2010 (sys.version return MSC v.1600), поэтому я установил Visual C ++ 2010 Express по ссылке в его ответе, которая называется http://go.microsoft. .com /? linkid = 9709949 . Я установил все с обновлениями, но, как вы можете прочитать ниже, это было ошибкой. В настоящее время должна быть установлена только оригинальная версия Express (ничего не обновляется).
vcvarsall.bat присутствовал, но возникла новая ошибка при установке пакета query_vcvarsall raise ValueError(str(list(result.keys())))ValueError: [u'path']
. С этой ошибкой связаны и другие вопросы, связанные с переполнением стека, например, ошибки при сборке / установке модуля C для Python 2.7.
Из этого ответа я определил, что 2010 Express устанавливает только 32-битные компиляторы. Чтобы получить 64-битные (и другие) компиляторы, вам нужно установить Windows 7.1 SDK. См. Http://msdn.microsoft.com/en-us/windowsserver/bb980924.aspx
Это не установит для меня, хотя, и установщик возвратил ошибку installation failed with return code 5100
. Я нашел решение по следующей ссылке: http://support.microsoft.com/kb/2717426 . Короче говоря, если установлены более новые версии распространяемого пакета Microsoft Visual C ++ 2010 для архитектуры x86 и x64, они конфликтуют с теми, которые есть в установщике SDK, и их нужно сначала удалить.
Затем SDK установлен, но я заметил, что vcvars64.bat по-прежнему не существует C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin
ни в его подпапках. vcvarsall.bat запускает пакетный файл vcvars64, поэтому без него пакет python все равно не установится (я забыл ошибку, которая была показана в это время).
Затем я нашел несколько инструкций здесь: http://www.cryptohaze.com/wiki/index.php/Windows_7_Build_Setup#Download_VS_2010_and_Windows_SDK_7.1
Следуя инструкциям, я уже установил Express и 7.1 SDK, поэтому установил SDK 7.1 SP1 и выполнил Отсутствует исправление файла заголовка. Затем я вручную создал vcvars64.bat с содержимым CALL setenv /x64
. Я вставлю все эти инструкции сюда, чтобы они не потерялись.
Шаг 1 - загрузить Visual Studio Express 2010.
http://www.microsoft.com/visualstudio/en-us/products/2010-editions/express
- это хорошее место для начала. Загрузите установщик и запустите его (vc_web.exe). Вам не нужна дополнительная загрузка SQL 2008.
Вам также понадобится Windows SDK (в настоящее время 7.1) для 64-битных компиляторов - если только вы не хотите делать только 32-битные сборки, которые не полностью поддерживаются ...
http://www.microsoft.com/en-us/download/details.aspx?id=8279 является хорошей отправной точкой для загрузки этого файла - вы захотите запустить winsdk_web.exe после загрузки!
Установка по умолчанию здесь просто отлично.
Наконец, загрузите и установите обновление Windows SDK 7.1 с пакетом обновления 1 (SP1):
http://www.microsoft.com/en-us/download/details.aspx?id=4422.
И, чтобы исправить отсутствующий заголовочный файл, VS2010 SP1.
http://www.microsoft.com/downloads/en/confirmation.aspx?FamilyID=75568aa6-8107-475d-948a-ef22627e57a5
И, черт возьми, исправить недостающий пакетный файл для VS2010 Express. Это становится совершенно абсурдным.
В C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ bin \ amd64 создайте «vcvars64.bat» со следующим (вам нужно будет работать от имени администратора):
ЗВОНОК setenv / x64
Мой пакет python по-прежнему не установлен (не может вспомнить ошибку). Затем я нашел несколько инструкций (скопировано ниже) для использования специальной командной строки SDK 7.1, см. Https://mail.python.org/pipermail/distutils-sig/2012-Feb февраля/ 018300.html.
Не обращайте внимания на этот вопрос. Кто-то здесь заметил этот пункт в меню: Пуск-> Все программы-> Microsoft Windows SDK v7.1 -> Командная строка Windows SDK 7.1
Это запускает пакетное задание, которое, кажется, устанавливает рабочую среду для компилятора. В этом приглашении вы можете ввести «setup.py build» или «setup.py install».
Я открыл командную строку Windows SDK 7.1 в соответствии с инструкциями и использовал ее для запуска easy_install в пакете python. И наконец, успехов!
TLDR ;
- Установите Visual Studio Express 2010 (желательно без обновленных распространяемых файлов или SQL-сервера).
- Установите Windows 7.1 SDK
- Установить Instal SDK 7.1 SP1 и исправить файл заголовка VS2010 SP1 (этот шаг может не потребоваться).
- Вручную создавать
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64\vcvars64.bat
с контентомCALL setenv /x64
- Пуск-> Все программы-> Microsoft Windows SDK v7.1 -> Windows SDK 7.1. Командная строка, чтобы открыть специальную командную строку x64, которую затем можно использовать с python / easy_install / pip / etc (в том числе в virtual_envs).