У мене була ця проблема при використанні Python 3.4.1 на Windows 7 x64 , і, на жаль, потрібні мені пакунки не мали відповідних файлів Exe або коліс, які я міг би використовувати. Ця система потребує декількох "обхідних шляхів", які детально описані нижче (та TLDR внизу ).
Використовуючи інформацію у відповіді Jaxrtech вище , я визначив, що мені потрібна Visual Studio C ++ 2010 (повернення sys.version 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']
. Є інші питання stackoverflow з цією помилкою, такі як Помилки під час складання / встановлення модуля 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 . Коротше кажучи, якщо нові версії x86 та x64 Microsoft Visual C ++ 2010 Redistributable's встановлені, вони конфліктують з версіями в інсталяторі 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 - хороша відправна точка для завантаження цього - ви хочете запустити програму windk_web.exe при завантаженні!
Установка за замовчуванням тут просто чудова.
Нарешті, завантажте та встановіть оновлення Windows SDK 7.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" із наступним (вам потрібно запуститись як адміністратор):
CALL setenv / x64
Мій пакет python досі не встановлений (не можу згадати помилку). Потім я знайшов кілька інструкцій (скопійованих нижче) щодо використання спеціального командного рядка SDK 7.1, див. Https://mail.python.org/pipermail/distutils-sig/2012-February/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
- Встановіть оновлення 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 / тощо (включаючи ті, що у virtual_envs).