PHP 7: Отсутствует VCRUNTIME140.dll

У меня ошибка при запуске PHP 7 в Windows. Когда я запускаю php в командной строке, он возвращает окно с системной ошибкой:

Программа не может запускаться, поскольку на вашем компьютере отсутствует VCRUNTIME140.dll. Попробуйте переустановить программу, чтобы исправить эту проблему.

После этого CLI рушится.

Поскольку я не хочу устанавливать DLL-файл с внешнего веб-сайта, я не знаю, как это исправить!

Версия PHP: 7.0.0alpha1 VC14 x64 Thread Safe

На боковой панели страницы загрузки страницы PHP 7 alpha это говорит следующее:

VC9, VC11 и VC14. Более свежие версии PHP построены с помощью VC9, VC11 или VC14 (соответственно, Visual Studio 2008, 2012 или 2015) и включают улучшения в производительности и стабильности.

  • Для сборки VC9 требуется, чтобы на Visual C ++ распространялся для Visual Studio 2008 с пакетом обновления 1 (SP1) x86 или x64

  • Для сборки VC11 требуется наличие распространяемого Visual C ++ для Visual Studio 2012 x86 или x64

  • Для сборки VC14 требуется, чтобы Visual C ++ распространялся для Visual Studio 2015 x86 или x64

С некоторыми из этих ссылок возникла проблема, поэтому файлы также доступны в Softpedia .

В случае PHP 7 alpha это последний вариант, который требуется.

Я думаю, что размещение этой информации является плохим, так как это своего рода маргинальный (т. Е. В основном буквально на полях!), Тогда как на самом деле это критически важно для запуска программного обеспечения.

Я задокументировал свой опыт получения PHP 7 alpha вверх и работает в Windows 8.1 на PHP: получение PHP7 alpha, работающего в Windows 8.1 , и оно охватывает еще несколько симптомов, которые могут возникнуть. Они не подходят для этого вопроса, но могут помочь другим людям.

Другой симптом этой проблемы:

  • Apache не php7apache2_4.dll , заявляя, что php7apache2_4.dll отсутствует, несмотря на то, что он определенно находится на своем месте и не предлагает ничего другого в любом журнале.
  • php-cgi.exe - The FastCGI process exited unexpectedly завершился (согласно комментарию @ ftexperts ниже)

Попытка решения:

  • Использование файла php7apache2_4.dll из более ранней php7apache2_4.dll PHP 7 dev. Это не сработало.

(Я включаю их для googleability.)

http://go.microsoft.com/?linkid=9877240 (x32-разрядная версия) – Visual C ++ 2015 Redistributable RC Это должно исправить это. Вы можете использовать Google для DLL, но это не важно.

PS: Это официально от Microsoft тоже 🙂

где я нашел его: https://www.visualstudio.com/downloads/visual-studio-2015-downloads-vs

Если вы следовали инструкциям Адама и по- прежнему получаете эту ошибку, убедитесь, что вы установили правильные варианты (x86 или x64).

У меня был VC14x64 с PHP7x86, и я до сих пор получил эту ошибку. Изменение PHP7 на x64 исправило это. Легко заметить, что вы случайно установили неверную версию.

Установка vc_redist.x86.exe работает для меня, даже если у вас 64-разрядная машина.

Для таких вещей вы не слепо продолжаете нажимать « Далее », « Далее », « Я согласен ».

WAMP информирует об этом во время и перед установкой.

Библиотеки времени исполнения MSVC VC9, VC10, VC11 требуются для Wampserver 2.4, 2.5 и 3.0, даже если вы используете только версии Apache и PHP с VC11. Runtimes VC13, VC14 требуется для PHP 7 и Apache 2.4.17

Пакеты VC9 (Visual C ++ 2008 с пакетом обновления 1) http://www.microsoft.com/en-us/download/details.aspx?id=5582 http://www.microsoft.com/en-us/download/details.aspx ? ID = 2092

Пакеты VC10 (Visual C ++ 2010 с пакетом обновления 1) http://www.microsoft.com/en-us/download/details.aspx?id=8328 http://www.microsoft.com/en-us/download/details.aspx ? ID = 13523

Пакеты VC11 (обновление Visual C ++ 2012 4) Два файла VSU4 \ vcredist_x86.exe и VSU4 \ vcredist_x64.exe для загрузки находятся на одной странице: http://www.microsoft.com/en-us/download/details. ASPX? ID = 30679

VC13 Packages] (Visual C ++ 2013 [) Два файла VSU4 \ vcredist_x86.exe и VSU4 \ vcredist_x64.exe для загрузки находятся на одной странице: https://www.microsoft.com/en-us/download/details. ASPX? ID = 40784

Пакеты VC14 (Visual C ++ 2015) Два файла vcredist_x86.exe и vcredist_x64.exe для загрузки находятся на одной странице: http://www.microsoft.com/en-us/download/details.aspx?id=48145

Вы должны установить как 32, так и 64-битные версии , даже если вы не используете бит Wampserver 64 бит.

ВАЖНОЕ ПРИМЕЧАНИЕ . Обязательно запустите все установки VC с правами администратора ( щелкните правой кнопкой мыши-> Запуск от имени администратора ). Просто пропустить этот маленький шаг впустую весь мой день.

У меня была такая же проблема при установке robot-framework-2.9.2 с использованием версии установщика Windows в Windows 7. Я мог бы решить эту проблему. Для сборки VC14 требуется наличие «Visual C ++ Redistributable для Visual Studio 2015 x86 или x64» с сайта Microsoft .

Я получил ту же ошибку и обнаружил, что MY VC 32 бит, Windows – 64 бит, я попытался установить Wamp 7 32 bit и решить проблему. Может быть, нам нужно установить Wamp 32 бит, если Visual Studio 32 бит. И наоборот.

Обычно это ошибка в вашей конфигурации PHP.

На самом деле довольно легко понять, что именно происходит:

  • Создайте небольшой файл (test.php) со стандартным скриптом phpinfo ()
  • Откройте командную строку
  • Запустите php вручную, используя небольшой файл, например «\ program files \ php \ php.exe» test.php
  • Читайте сообщения об ошибках 🙂