Windows에서 PHP 7.4.x를 설치하고 실행한다면 가장 처음에 이런 오류 메시지가 나타난다.
==============================================
컴퓨터에 VCRUNTIME140.dll이(가) 없어 프로그램을 시작할 수 없습니다.
프로그램을 다시 설치하여 이 문제를 해결하십시오.
==============================================
이 문제는 당연하게도 맨 위 홈페이지 캡처에 나타나있듯이 PHP 7.4.x가 Visual C++ 15 (Visual Studio 2017)로 빌드되었기 때문에 실행하기 위해 필요한 환경(런타임)을 갖지 못해 실행할 수 없다는 메시지이다.
이 오류 메시지만 검색하여 찾아가는 상당한 수의 블로그를 보면 중간에 나와있는 DLL 파일만 다운로드 받아 시스템 폴더에 집어넣으라는 방법이 포스팅되어 있는데 이 방법은 사실 프로그램을 실행하는데 있어서는 상관이 없지만 잘못된 설치 방법이다.
어차피 이렇게 DLL 파일을 수동으로 시스템 폴더에 넣어도 또 다른 의존성 파일(DLL)이 없다고 오류 메시지가 나타날 확률이 높다.
정확하게 이 문제를 해결하려면 VCRUNTIME140.DLL이 어떤 Visual C++ 버전에 포함이 되는지 알아보아야하는데 필자는 단순히 검색하여 이 파일이 Visual C++ 2015인줄 알고 Microsoft 공식 홈페이지에서 Visual C++ 2015 런타임 패키지를 설치하게 되었다.
그런데 다행히도 이 문제는 더 이상 나타나지 않았지만 다른 문제가 생긴 것이다.
============================
PHP Warning: 'vcruntime140.dll' 14.0 is not compatible with this PHP build linked with 14.16 in Unknown on line 0
============================
오우... 내가 설치한 파일이 호환되지 않는다고 하는 것이였다.
그래서 다시 잘 찾아보니 해답은 바로 맨 위 사진의 PHP 홈페이지에 있던 것이였다.
홈페이지에서 안내해주는 링크 덕분에 "Visual Studio 2015-2019의 Visual C++ 재배포 가능 패키지"를 설치하여 문제를 해결할 수 있었다.
참고로 재배포 가능 패키지는 본인의 운영체제(Windows)의 아키텍처(32비트 또는 64비트)에 따라 설치하는게 아니라 실행하려는 프로그램이 어떤 아키텍처를 대상으로 빌드되었는지에 따라 설치해야하는 것이다.
그리고 32비트는 i386, i486, i586, x86 으로 표현하고, 64비트는 amd64, ia64, x64 로 표현된다.
필자는 64비트 PHP를 사용할 예정이므로 64비트 패키지를 설치했다.
참고 링크:
Windows용 PHP 다운로드 사이트
https://windows.php.net/download/
VS2015-2019의 VC++ 재배포 가능 패키지
32비트 다운로드 링크 https://aka.ms/vs/16/release/VC_redist.x86.exe
64비트 다운로드 링크 https://aka.ms/vs/16/release/VC_redist.x64.exe
'기술 > PHP' 카테고리의 다른 글
윈도우(Windows)에서 PHP8 (8.0.0 beta2)을 컴파일하고 빌드하는 방법을 알아보자! #php8 베타2 다운로드 (1226) | 2020.08.29 |
---|---|
코드이그나이터4(CodeIgniter4)에서 model의 escape가 이상하게 동작한다고!? (1252) | 2020.08.23 |
댓글