У меня была эта проблема с использованием 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']
новая ошибка. С этой ошибкой возникают другие проблемы с stackoverflow, такие как Ошибки при сборке / установке модуля C для Python 2.7
. Я определил из этого ответа, что Express 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, они конфликтуют с установщиками 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 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
- Обновление 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).
В Java Строки неизменяемы. То, что когда-либо выполнялось в строке, приводит к новому объекту. Вам необходимо повторно назначить значение после операции. Следующее может вам помочь.
entry = entry.replace("\\\"", "'");
Обычная ошибка, которую я всегда делаю:)
Вы должны это сделать: entry = entry.replace("\\\"", "'");