Ошибка: требуется Microsoft Visual С++ 10.0 (невозможно найти vcvarsall.bat)

Я пытаюсь установить numpy с PyCharm, но я продолжаю получать эту ошибку:

Ошибка: требуется Microsoft Visual С++ 10.0 (невозможно найти vcvarsall.bat).

Может кто-нибудь, пожалуйста, объясните мне, что я должен сделать, чтобы исправить эту ошибку (и как можно проще и подробнее)? im, используя python 3.4.2 (я знаю, что на это был дан ответ, но я не понял его).

Ответ 1

Я получил ту же ошибку и в итоге использовал предварительно построенный дистрибутив numpy, доступный в SourceForge (аналогично, распределение matplotlib).

Доступны сборки для 32-разрядных 2.7 и 3.3/3.4.
Конечно, PyCharm обнаружил их.

Ответ 2

Я смог исправить это на 64-разрядной версии Windows 7 под управлением Windows 7, выполнив команду "set" в командной строке, чтобы определить существующую переменную среды инструментов Visual Studio; в моем случае это было VS140COMNTOOLS для сообщества Visual Studio 2015.

Затем запустите следующее (подставляя переменную в правую часть, если у вас другое имя):

установить VS100COMNTOOLS =% VS140COMNTOOLS%

Это позволило мне установить модуль PyCrypto, который ранее выдавал мне ту же ошибку, что и OP.

Для более постоянного решения добавьте эту переменную среды в среду Windows через Панель управления ( "Редактировать переменные системной среды" ), хотя вам может понадобиться использовать фактический путь вместо замены переменных.

Ответ 3

Python 3.3 и более поздние версии теперь используют компилятор 2010 года. Лучшим способом решения проблемы является просто установить Visual С++ Express 2010 бесплатно.

Теперь идет более сложная часть для 64-битных пользователей, и, честно говоря, я просто перешел на 32-битный, но в 2010 Express не приходит с 64-битным компилятором (вы получаете новую ошибку, ValueError: ['path']), поэтому вам нужно установить Microsoft SDK 7.1 и следовать указаниям здесь, чтобы получить 64-битный компилятор, работающий с python: Python PIP имеет проблемы с путём для MS Visual Studio 2010 Express для 64-разрядной установки на Windows 7

Теперь вам может быть проще использовать 32-битную версию. В дополнение к тому, чтобы заставить компилятор работать, вы можете обойти необходимость скомпилировать многие модули, получив файл двоичного диска из этого каталога http://www.lfd.uci.edu/~gohlke/pythonlibs/

Просто скачайте нужный файл .whl, сдвиньте + щелкните правой кнопкой мыши папку загрузки и выберите "открыть здесь окно команд" и запустите

pip install module-name.whl 

Я использовал этот метод на 64-битной версии 3.4.3 до того, как я сломался, и решил просто получить рабочий компилятор для компиляции модулей из источника по умолчанию, поэтому файлы двоичного диска работают и имеют сборку pip из исходного кода. т.

Люди, получающие эту ошибку (vcvarsall.bat) на Python 2.7, вместо этого могут установить "Microsoft Visual С++ Compiler for Python 2.7"

Ответ 4

Я столкнулся с этой проблемой дважды. Впервые я использовал VS 2013, а во второй раз использовал VS 2015 с различным решением. Первое решение VS 2013 и python 2.7:

  • Нажмите win + R
  • Введите SET VS90COMNTOOLS=%VS120COMNTOOLS%
  • Закрыть все окна
  • Введите команду "Enter" снова

Теперь, через год, я нашел более простой способ его исправить. На этот раз я использую VS 2015 и python 3.4.

  • Щелкните правой кнопкой мыши Мой компьютер.
  • Нажмите "Свойства"
  • Расширенные настройки системы
  • Переменные среды
  • Добавить новую системную переменную
  • Введите VS100COMNTOOLS в имя переменной
  • Введите значение VS140COMNTOOLS в новую переменную.
  • Закрыть все окна

Теперь я уверен, что вы спросите какой-то вопрос, что такое VSXXXCOMNTOOLS, и что мне делать, если я использую VS2008 или другой компилятор.

Существует файл python\Lib\distutils\msvc9compiler.py, начиная с строки 216, мы видим

def find_vcvarsall(version):
    """Find the vcvarsall.bat file
    At first it tries to find the productdir of VS 2010 in the registry. If
    that fails it falls back to the VS100COMNTOOLS env var.
    """

Это означает, что вы должны предоставить productdir VS 2010 для него, поэтому, если вы используете python 2.x и

  • Visual Studio 2010 (VS10):SET VS90COMNTOOLS=%VS100COMNTOOLS%
  • Visual Studio 2012 (VS11):SET VS90COMNTOOLS=%VS110COMNTOOLS%
  • Visual Studio 2013 (VS12):SET VS90COMNTOOLS=%VS120COMNTOOLS%
  • Visual Studio 2015 (VS15):SET VS90COMNTOOLS=%VS140COMNTOOLS%

или если вы используете python 3.x и

  • Visual Studio 2010 (VS10):SET VS100COMNTOOLS=%VS100COMNTOOLS%
  • Visual Studio 2012 (VS11):SET VS100COMNTOOLS=%VS110COMNTOOLS%
  • Visual Studio 2013 (VS12):SET VS100COMNTOOLS=%VS120COMNTOOLS%
  • Visual Studio 2015 (VS15):SET VS100COMNTOOLS=%VS140COMNTOOLS%

И это так же, как добавление новой системной переменной. См. Второй способ.

Обновление: иногда оно по-прежнему не работает. Проверьте свой путь, убедитесь, что он содержит VSXXXCOMNTOOLS

Ответ 5

VS 2010 Express больше не привязан к VS-страницам VS Express (которые я нашел). Я нашел эту ссылку для ISO, которую я использовал, и исправил ошибки, упомянутые здесь.

http://download.microsoft.com/download/1/E/5/1E5F1C0A-0D5B-426A-A603-1798B951DDAE/VS2010Express1.iso

Примечание. Также убедитесь, что у вас есть x86 (Python + Postgresql), или вы получите другие ошибки. Я не пробовал все x64.

Ответ 6

вы можете скачать .whl в LFD. Затем используйте "pip install ***. Whl" в CMD

Ответ 7

Пытался установить lxml, grab и другие расширения, для которых требуется VS 10.0+ и получить ту же проблему. Я нахожу собственный способ решить эту проблему (Windows 10 x64, Python 3.4 +):

  • Установите Visual С++ 2010 Express (download). (Не устанавливайте Microsoft Visual Studio 2010 с пакетом обновления 1)

  • Удалите все распространяемые пакеты Microsoft Visual С++ 2010 из панели управления\Программы и компоненты. Если вы этого не сделаете, установка завершится с ошибкой "Неустранимая ошибка при установке".

  • Установите автономную версию Windows SDK для Visual Studio 2010 (v7.1) (download). Это необходимо для 64-битных расширений. Windows имеет встроенный монтаж для ISO. Просто установите ISO и запустите программу Setup\SDKSetup.exe вместо файла setup.exe.

  • Создайте файл vcvars64.bat в C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64, который содержит:

    CALL "C:\Program Files\Microsoft SDK\Windows\v7.1\Bin\SetEnv.cmd" /x 64

  • Найдите расширение на этом сайте, затем поместите его в папку python и установите расширение .whl с помощью pip:

    python -m pip install extensionname.whl

  • Enjoy

Ответ 8

вам нужно проверить, что ваш пакет пакетов обновлен до последней версии в вашем pycharm, а затем установите пакет numpy. в настройках → проект: progLangComp → Project Interpreter есть таблица пакетов и их текущая версия (просто обозначенная как Версия) и их последняя версия (помечена как последняя). Текущий номер версии протокола должен совпадать с последней версией. Если вы видите синюю стрелку перед пунктом, вам нужно обновить ее до последней, а затем попытаться установить numpy или любые другие пакеты, которые вы не смогли установить, для меня это было pandas, которое я хотел установить.

введите здесь описание изображения