Требуется Microsoft Visual C ++ 14.0 (невозможно найти vcvarsall.bat)


241

Я установил Python 3.5 и во время работы

pip install mysql-python

это дает мне следующую ошибку

error: Microsoft Visual C++ 14.0 is required (Unable to find vcvarsall.bat)

Я добавил следующие строки в мой путь

C:\Program Files\Python 3.5\Scripts\;
C:\Program Files\Python 3.5\;

C:\Windows\System32;
C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC;
C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC

У меня на компьютере установлена ​​64-битная win 7.

Что может быть решением для устранения этой ошибки и правильной установки модулей через pip.


5
убедитесь, что pip install --upgrade setuptoolsвы обновили
3pitt

93
Используйте эту ссылку для загрузки Visual C ++ 2015 Build Tools . Он установит Visual C ++ 14.0 без установки Visual Studio. После завершения установки повторите попытку установки pip, и вы больше не получите ошибку.
Лалит Кумар Б

7
вздох это не заканчивается здесь. Каналы тоже не работают. Мое уважение к питону быстро умирает!
Ральф Ритох

6
Сэкономьте себе много времени и места на жестком диске и сначала перейдите к этому ответу: stackoverflow.com/a/51087608/84162
MECU

3
Не работает для меня, я попробовал все ответы. Я пытаюсь установить скрап, или я должен назвать это дерьмом. Ничего действительно не работает с первой попытки, не так ли ...
samayo

Ответы:


137

Ваш путь перечисляет только Visual Studio 11 и 12, он хочет 14, то есть Visual Studio 2015 . Если вы установите это, и не забудьте поставить галочку, Languages->C++то это должно работать.

На моей установке Python 3.5 сообщение об ошибке было немного более полезным и включало URL, чтобы получить его от

 error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools

Изменить: Новая рабочая ссылка

Редактировать: Как рекомендует Lightfire228, вам также может потребоваться обновить setuptoolsпакет, чтобы ошибка исчезла:

pip install --upgrade setuptools

39
После этого у меня все еще была эта ошибка. Обновление setuptoolsс, 28.8.0чтобы 36.2.7сделать свое дело.
NauticalMile

8
Обновление setuptools исправило эту ошибку при попытке установить pyephem.
Бенни Джобиган

37
Для тех, кто только что рассказал то, что сказал @NauticalMile, бегите pip install --upgrade setuptools. В противном случае никакая установка MS дерьма не исправит эту ошибку
Lightfire228

6
ссылка не работает
Джошуа Нельсон


110

Двоичная установка это простой способ!

Я не могу поверить, что никто не предложил это уже - используйте опцию только для двоичного кода для pip. Например, для mysqlclient:

pip install --only-binary :all: mysqlclient

Многие пакеты не создают сборки для каждого отдельного выпуска, что заставляет ваш пип собираться из исходного кода. Если вы счастливы использовать последнюю предварительно скомпилированную двоичную версию, используйте, --only-binary :all:чтобы позволить pip использовать более старую двоичную версию.


У меня получилось установить пакеты, которые я не смог установить ранее (pystan). Однако другой пакет fbprophet Нужен файл .dll предыдущего пакета. Однако, хитрый трюк!
Риши Джайн

Это дает мне ту же ошибку. Нужно ли устанавливать VS 2015 или выше, прежде чем писать вышеуказанную команду?
Зеешан Ахмад Халил

1
@ZeeshanAhmadKhalil, какой пакет вы пытаетесь установить? Я могу только предположить, что для вашего пакета нет бинарной версии + версия Python + архитектура компьютера.
Аластер МакКормак

@AlastairMcCormack да, к сожалению, двоичная версия не доступна для eth-tester.
Зеешан Ахмад Халил

92

Чтобы решить любую из следующих ошибок:

  • Failed building wheel for misaka
  • Failed to build misaka
  • Microsoft Visual C++ 14.0 is required
  • Unable to find vcvarsall.bat

Решение:

  1. Перейти к инструментам сборки для Visual Studio 2017

  2. Выберите бесплатную загрузку под Visual Studio Community 2017. Это позволит загрузить установщик. Запустите установщик.

  3. Выберите то, что вам нужно, на вкладке рабочей нагрузки:

    а. Под Windows есть 3 варианта. Проверяйте только разработку рабочего стола с C ++

    б. Под Web & Cloud есть 7 вариантов. Проверяйте только разработку Python (я считаю, что это необязательно, но я сделал это).

  4. В cmd введите pip3 install misaka введите описание изображения здесь

Обратите внимание: если вы уже установили Visual Studio, то при запуске установщика вы можете изменить свой (нажмите кнопку «Изменить» в Visual Studio Community 2017) и выполнить шаги 3 и 4.

Снимок экрана кнопки "Изменить"

Последнее замечание: если вы не хотите устанавливать все модули, достаточно иметь 3 из них (или более новую версию VC ++ 2017). (Вы также можете установить инструменты сборки Visual Studio только с этими параметрами, поэтому вам не нужно устанавливать саму Visual Studio Community Edition) => Эта минимальная установка уже занимает 4,5 ГБ, поэтому сохранение чего-либо полезно Модули, необходимые для компилятора c ++


3
Я не получаю возможность разработки на Python под Web & Cloud. Будет ли это работать, если я оставлю это пустым?
crucifix94

2
самое главное, чтобы проверить разработку рабочего стола с C ++ ... это будет работать
WISAM

Это сработало, и мне не понадобились инструменты сборки для VS2015.
xji

добавлено редактирование, чтобы показать минимально необходимые пакеты для большинства установок
studioj

1
Это единственное, что сработало для меня! Установка Microsoft Visual C ++ 14.0 не помогла, и инструменты установки были обновлены, но я все еще получал ошибку «Требуется Microsoft Visual C ++ 14.0», пока я не установил Visual Studio.
BluE

63

Как указывалось в других ответах, одним из решений является установка Visual Studio 2015. Однако для этого требуется несколько ГБ дискового пространства. Одним из способов является установка предварительно скомпилированных двоичных файлов. На веб-странице http://www.lfd.uci.edu/~gohlke/pythonlibs ( mirror ) содержатся скомпилированные двоичные файлы для многих пакетов Python. Загрузив интересующий вас пакет, вы можете установить его pip install, например, используя pip install mysqlclient‑1.3.10‑cp35‑cp35m‑win_amd64.whl.


4
Спасибо. Я считаю, что pip wheelсоздает архив колес; и pip installфактически устанавливает указанный файл колеса. См. Pip.pypa.io/en/stable/reference/pip_wheel . Кстати, этот подход работал для меня при установке hmmlearnпакета через hmmlearn-0.2.1-cp36-cp36m-win_amd64.whlколесо.
Олег Мельников

На одном из моих компьютеров скачанное колесо позволило мне обойти установку MS Visual C ++ 14. Но, как сказал Олег, используйте pip install, а не pip wheel.
Бенни Джобиган

@OlegMelnikov @ BennyJobigan Спасибо за исправление, я соответственно исправил ответ.
Франк Дернонкур

спасибо за это, кстати. это решило мою проблему с Twisted. Я действительно не хотел загружать 3 ГБ данных, чтобы использовать одну вещь! Ага.
Mangohero1

Может кто-нибудь объяснить, почему / как это работает? Это сработало для меня, мне просто любопытно, для чего именно скомпилированный двоичный файл
dvtan

51

У меня была точная проблема, когда я пытался установить на мой компьютер с Windows 10 фреймворк Python для очистки веб-страниц. Я нашел решение таким образом:

  1. Загрузите последний (последний) файл колеса по этой ссылке file файл колеса для витой упаковки введите описание изображения здесь

  2. Я бы порекомендовал сохранить этот файл колеса в каталоге, где вы установили Python, то есть где-то на локальном диске C

  3. Затем перейдите в папку, в которой находится файл колеса, и запуститеpip install <*wheel file's name*>

  4. Наконец, запустите команду еще pip install Scrapyраз, и вы можете использовать Scrapy или любой другой инструмент, который требовал от вас загрузки массивного пакета Windows C ++ / SDK .

Отказ от ответственности : это решение помогло мне при попытке установить Scrapy , но я не могу гарантировать, что то же самое происходит при установке других программ / пакетов / и т. Д.


Для меня это тоже сработало, и есть большая вероятность, что ваше решение будет работать для любого пакета, «требующего» Windows C ++, при условии, что вы сможете найти правильно скомпилированный пакет для него ... Если кто-то сочтет эту гипотезу неверной - пожалуйста дай нам знать.
JxAxMxIxN

14
Не используйте последнюю версию Twisted, используйте ту, которая соответствует вашей версии Python, т.е. для Python3.6 используйте Twisted с CP36
Sojtin

Кроме того, если вы используете virtualenv, загрузите указанный выше файл в папку Lib \ site-packages и установите с помощью pip, когда virtualenv активен.
Ариндам Ройховдхури

1
Вот как это происходит ... Могу ли я добавить "cp ..." указывает на вашу версию Python и "win ..." ваша система 32 против 64 бит. Таким образом, вы можете проверить в окне cdm, какая у вас версия Python, python --versionи выбрать нужный whl-файл
Peter

stackoverflow.com/review/suggested-edits/21928251 Примечание для пользователей Windows: после шага 3, закройте существующий CMD или любой терминал , который вы используете , и снова открыть / начать новый / свежий терминал для выполнения команды в pip install Scrapyпротивном случае вы можете получить тот же ошибка, которую вы получаете ранее при выполнении pip install Scrapy.
Пользователь

15

У меня была именно эта проблема при попытке установить mayavi.

Так что у меня также было общее error: Microsoft Visual C++ 14.0 is requiredпри установке библиотеки pip.

Пример ошибки

После просмотра многих веб-страниц и решений этой темы, ни один из них не работает. Я полагал, что эти шаги (большинство взятых из предыдущих решений) позволили этому работать.

  1. Перейдите в Инструменты сборки для Visual Studio 2017 и установите Build Tools for Visual Studio 2017. Который находится под All downloads( прокрутите вниз ) >>Tools for Visual Studio 2017
    • Если вы уже установили это, перейдите к 2 .

Установка инструментов сборки

  1. Выберите то, что C++ Componentsвам нужно ( я не знал, что мне нужно, поэтому установил многие из них ).
    • Если вы уже установили, Build Tools for Visual Studio 2017откройте приложение, Visual Studio Installerзатем перейдите к Visual Studio Build Tools 2017>> Modify>> Individual Componentsи выберите необходимые компоненты.
    • Из других ответов важные компоненты , как представляется,: C++/CLI support, VC++ 2017 version <...> latest, Visual C++ 2017 Redistributable Update, Visual C++ tools for CMake, Windows 10 SDK <...> for Desktop C++, Visual C++ Build Tools core features, Visual Studio C++ core features.

Выберите компоненты

  1. Установите / измените эти компоненты для Visual Studio Build Tools 2017.

  2. Это важный шаг . Откройте приложение и Visual Studio Installerперейдите на Visual Studio Build Tools>> Launch. Который откроет окно CMD в правильном месте для Microsoft Visual Studio\YYYY\BuildTools.

Откройте установщик Visual Studio Запустите инструменты сборки Visual Studio Окно инструментов сборки CMD

  1. Теперь войдите python -m pip install --upgrade setuptoolsв это окно CMD.

CMD Update Setupols

  1. Наконец, в этом же окне CMD пип установить вашу библиотеку Python: pip install -U <library>.

CMD Установить Python Library


11

У меня была такая же проблема при установке модуля spaCy. И я проверил панель управления, у меня уже есть несколько визуальных распространяемых C ++.

Я выбрал «Microsoft Visual Studio Community 2015», которая уже установлена ​​на моем ПК -> «Изменить» -> установите флажок «Общие инструменты для Visual C ++ 2015». Затем потребуется некоторое время и загрузите более 1 ГБ для его установки.

Это исправило мою проблему. Теперь у меня установлено spaCy.


11

У меня была такая же проблема. Решение для обновления setuptools

pip install -U setuptools

или

pip install setuptools --upgrade

11

Прочитав много ответов в SO, но ни один из них не сработал, мне, наконец, удалось решить его, следуя инструкциям в этой теме. Я оставлю здесь шаги на случай, если страница исчезнет:

Попробуйте установить инструменты сборки для Visual Studio 2017, выберите рабочую нагрузку «Инструменты сборки Visual C ++» и проверьте параметры «Поддержка C ++ / CLI» и «Набор инструментов VC ++ 2015.3 v14.00 (v140) для рабочего стола», как показано ниже.

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

Надеюсь, это поможет, как и для меня.


9

Убедитесь, что вы установили эти требуемые пакеты. Отлично работает в моем случае, так как я установил проверенные пакеты введите описание изображения здесь


4
Большое спасибо за этот ответ. отсутствовала поддержка C ++ / CLI и VC ++ 2015.3 ...; добавляя те исправлены все мои вопросы
спинодало

8

Чтобы расширить ответы по ocean800 , davidsheldon и user3661384 :

Теперь вы больше не должны использовать Visual Studio Tools 2015, поскольку доступна более новая версия. Как указано в документации по Python, вы должны использовать Visual Studio Tools 2017 вместо этого.

Visual C ++ Build Tools 2015 был обновлен Microsoft до инструментов сборки для Visual Studio 2017.

Загрузите его отсюда

Вам также потребуется setuptools, если у вас не запущены инструменты настройки:

pip install setuptools

Или, если у вас уже есть, не забудьте обновить его.

pip install setuptools --upgrade

Для приведенной выше ссылки на документацию по Python вы увидите, что версия setuptools должна быть как минимум 34.4.0. для VS Tools для работы


Очень печально, что Python должен использовать компилятор другой языковой платформы, чтобы выполнить свою грубую работу. Почему команда разработчиков Python не создала свой собственный компилятор, используя только то, что нужно.
Эндрю С.

@AndrewS Да, это грустно, но необходимо. Разработка эффективного компилятора C - нелегкая задача (как разработка нового языка). Особенно кроссплатформенный (Windows использует собственную нестандартную систему), поэтому ожидать от этого действительно невозможно. C ++ еще хуже, потому что он намного сложнее (даже во время разработки компилятора MS для C ++ возникли серьезные проблемы с получением поддержки всего синтаксиса; отсюда и заголовок stdafx.h, включающий необходимые функции). Делать это означало бы использовать ОГРОМНОЕ количество времени на разработку, чтобы заново изобрести колесо.
Симон

@AndrewS, а также почти вдвое увеличивает время разработки, чтобы даже поддерживать оба проекта, в конечном итоге замедляя каждый выпуск самого Python. Собрать уже существующий компилятор MS намного проще (так как им не нужно его разрабатывать).
Симон

8

Используйте эту ссылку для загрузки и установки Visual C ++ 2015 Build Tools . Он автоматически загрузит visualcppbuildtools_full.exeи установит Visual C ++ 14.0 без фактической установки Visual Studio. После завершения установки повторите попытку установки pip, и вы больше не получите ошибку.

Я проверил его на следующих платформах и версиях:

Python 3.6 on Windows 7 64-bit
Python 3.8 on Windows 10 64-bit

У меня есть такое же предложение в качестве комментария к вопросу, однако меня попросили опубликовать это как ответ, поскольку это помогло многим людям. Поэтому я разместил это как ответ.


2
Спасибо за ссылку, не смог попасть на сайт Microsoft.
Ашутош Аграри

6

У меня была точно такая же проблема, и я решил ее, установив mysql-connector-python с помощью:

pip install mysql-connector-python

Я нахожусь на python3.7 & windows 10, и установка Microsoft Build Tools для Visual Studio 2017 (как описано здесь ) не решила мою проблему, которая была идентична вашей.


5

Я была такая же проблема. Загрузка инструментов сборки для Visual Studio 2017 работала для меня. Найдите это здесь



3

Просто была та же проблема при использовании последней версии Python 3.6. С Windows OS 10 Home Edition и 64-битной операционной системой

Шаги, чтобы решить эту проблему:

  1. Удалите все имеющиеся у вас версии Visual Studio через панель управления.
  2. Установите Visual Studio 2015 и выберите вариант по умолчанию, который установит Visual C ++ 14.0 самостоятельно
  3. Вы можете использовать Pycharm для установки scrapy -> Project-> Project Interpreter -> + (установить scrapy)
  4. проверьте scrap в REPL и pycharm при импорте, вы не должны видеть никаких ошибок

Также не требуется использовать Conda / pip для этого, только что выше решенные мои проблемы.
Сандип Ананд

Если у вас уже установлена ​​Visual Studio 2015 (любая версия, включая сообщество), вам не нужно удалять ее, просто перейдите к программам и функциям и измените установку, отметьте языки программирования - Visual C ++ в соответствии с этим stackoverflow.com/a / 40886619/1335793
Давос,


2

У меня такая же проблема. Мне нужна была 64-битная версия Python, поэтому я установил 3.5.0 (самая последняя на момент написания этой статьи). После перехода на 3.4.3 все мои установки модуля работали.

Релизы Python для Windows


4
Любое другое решение? кроме отката к 3.4.3
wadhwa94

Вы попробовали процесс, который я описал на моем решении выше. Это должно работать для вас, так как я думаю, что ваша проблема очень похожа на мою. Попробуйте.
Сушант Чаудхари

2

Ни одно из решений здесь и в других местах не помогло мне. Оказывается, на моей 64-битной ОС Windows 10 устанавливается несовместимая 32-битная версия mysqlclient, потому что я использую 32-битную версию Python.

Мне пришлось удалить мой текущий Python 3.7 32bit, и переустановить Python 3.7 64bit, и теперь все работает нормально


2

Посмотрите, есть ли в пакете официальная вилка , включающая необходимые бинарные колеса.

Я нуждался в пакете python-Levenshtein, имел эту ошибку, и нашел пакет python-Levenshtein-wheelsвместо этого.


2

Просто зайдите на https://www.lfd.uci.edu/~gohlke/pythonlibs/ и найдите подходящий пакет (whl файл). Загрузить. Перейдите в папку загрузки в cmd или введите «cmd» в адресной строке папки. Запустите команду:

pip install mysqlclient-1.4.6-cp38-cp38-win32.whl

(Введите имя файла правильно. Я привел только пример). Ваша проблема будет решена без установки build tpp cpp размером 6GB.


2

добавить поверх ответа @Sushant Chaudhary

в моем случае я получил еще одну ошибку относительно lxml, как показано ниже

copying src\lxml\isoschematron\resources\xsl\iso-schematron-xslt1\readme.txt -> build\lib.win-amd64-3.7\lxml\isoschematron\resources\xsl\iso-schematron-xslt1
running build_ext
building 'lxml.etree' extension
error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools

Мне пришлось установить lxml ‑ 4.2.3 ‑ cp37 ‑ cp37m ‑ win_amd64.whl же, как в ответе @Sushant Chaudhary, чтобы успешно завершить установку Scrapy.

  1. Загрузите lxml ‑ 4.2.3 ‑ cp37 ‑ cp37m ‑ win_amd64.whl с веб-сайта https://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml.
  2. положить его в папку, где установлен Python
  3. установить его с помощью pip install <file-name>

теперь ты можешь бежать pip install scrapy


1

К сожалению! Похоже, у них нет колес Windows на PyPI .

В то же время, установка из источника, вероятно, работает или попробуйте загрузить MSVC ++ 14, как предлагается в сообщении об ошибке и другими пользователями на этой странице.

На сайте Christoph также есть неофициальные двоичные файлы Windows для пакетов расширения Python (файлы .whl).

Выполните шаги, указанные в следующих ссылках, чтобы установить двоичные файлы:

  1. Прямо в базе Python
  2. В виртуальных средах / Pycharm

Также проверьте:

Какой бинарный файл скачать ??


1

для Python 3.7.4 сработал следующий набор команд: перед этими командами необходимо подтвердить Desktop с C ++ и Python установлен в Visual Studio.

cd "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build"
vcvarsall.bat x86_amd64
cd \
set CL=-FI"%VCINSTALLDIR%\tools\msvc\14.16.27023\include\stdint.h"


pip install pycrypto

1

У меня была такая же проблема при установке mysqlclient для проекта Django.

В моем случае проблема связана с несоответствием архитектуры системы. В моей системе установлена ​​64-битная версия Windows 7. Но я по ошибке установил 32- битную версию Python 3.7.2 .

Итак, я переустановил интерпретатор Python ( 64 бит) и выполнил команду

pip install mysqlclient

Я надеюсь, что это будет работать и с другими пакетами Python.


1

У меня была такая же проблема на моем Windows 10 Python версии 3.8. В моем случае мне нужно было установить mysqlclient, если произошла ошибкаMicrosoft Visual C++ 14.0 is required . Поскольку установка visual studio и ее пакетов может быть утомительным процессом, вот что я сделал:

Шаг 1 - Откройте неофициальные бинарные файлы Python из любого браузера и откройте его веб-сайт.

Шаг 2 - нажмите Ctrl + F и введите все, что вы хотите. В моем случае это был mysqlclient.

Шаг 3 - Зайдите в него и выберите в соответствии с вашей версией Python и системой Windows. В моем случае это был mysqlclient ‑ 1.4.6 ‑ cp38 ‑ cp38 ‑ win32.whl и загрузите его.

Вот

Шаг 4 - откройте командную строку и укажите путь, куда вы скачали свой файл. В моем случае это был C: \ Users \ user \ Downloads

шаг 5 - введите pip install .\mysqlclient‑1.4.6‑cp38‑cp38‑win32.whlи нажмите ввод.

Таким образом, он был успешно установлен, после чего мой проектный терминал повторно ввел требуемую команду. Это решило мою проблему

Обратите внимание, что во время работы над проектом в pycharm я также пытался установить mysql-client из интерпретатора проекта. Но mysql-client и mysqlclient - это разные вещи. Я понятия не имею, почему и это не сработало.


0

Я столкнулся с той же проблемой. Следующее сработало для меня: Загрузите неофициальный двоичный файл с сайта установщика Christoph Gohlke согласно версии Python, установленной в вашей системе. Перейдите в папку, где вы установили файл и запустите

pip install filename

У меня python_ldap‑3.0.0‑cp35‑cp35m‑win_amd64.whlработал так как моя машина 64 битная и версия питона 3.5. Это успешно установлено python-ldap на моем компьютере с Windows. Вы можете попробовать то же самое для mysql-python


4
Чем полезен этот ответ?
Сахил


0

Если Visual Studio это НЕ ваша вещь, и вместо этого вы используете VS код , то эта ссылка будет вести вас через установщик , чтобы получить C ++ работает на вашем Windows.

Вам нужно только заполнить часть Предварительных реквизитов. https://code.visualstudio.com/docs/cpp/config-msvc/#_prerequisites

Это похоже на другие ответы, но эта ссылка, вероятно, будет стареть лучше, чем некоторые ответы здесь.

PS: не забудьте запустить pip install --upgrade setuptools


Я задал новый вопрос, может ли MinGW имитировать Visual C ++ (4,5 ГБ), который стоит всего 450 МБ, см. Stackoverflow.com/questions/62149329/…
Лоренц,

Вот Это Да! Сохранить 4 ГБ в процессе установки было бы удивительным достижением. Я надеюсь, что вы можете получить это отсортировано @Lorenz. Я обязательно буду следить за вашим вопросом.
Пауло Сильва
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.