>백엔드 개발 >PHP 문제 >Windows PHP 확장 컴파일 및 설치

Windows PHP 확장 컴파일 및 설치

WBOY
WBOY원래의
2023-05-06 10:05:071283검색

웹 서버 환경을 구축할 때 PHP는 필수 소프트웨어 중 하나이며, PHP의 다양한 확장 기능은 개발자의 다양한 요구를 충족시킬 수 있습니다. 일부 확장은 Windows에서 수동으로 컴파일하고 설치해야 합니다. 이 문서에서는 Windows에서 PHP 확장을 컴파일하고 설치하는 방법을 소개합니다.

  1. 컴파일 도구 설치

Windows에서 PHP 확장을 컴파일하려면 C 컴파일러, make 도구 및 pkg-config 도구를 포함한 일부 컴파일 도구를 사용해야 합니다. MSYS2를 설치하면 이러한 도구를 얻을 수 있습니다. 구체적인 방법은 다음과 같습니다.

1.1 MSYS2 설치 프로그램 다운로드

MSYS2 공식 웹사이트(https://www.msys2.org/)에서 해당 버전의 설치 프로그램을 다운로드할 수 있습니다. ), 여기서는 64비트입니다. 예를 들어 시스템은 msys2-x86_64-20210725.exe를 다운로드했습니다.

1.2 MSYS2

설치 msys2-x86_64-20210725.exe를 두 번 클릭하여 설치를 수행하고 프롬프트를 따릅니다. 사용자 정의 설치 경로를 선택할 수 있습니다. 여기에서 기본 경로를 선택하기만 하면 됩니다.

1.3 MSYS2 구성

설치가 완료된 후 MSYS2 설치 경로에서 msys2.exe를 열고 다음 명령을 실행하여 MSYS2를 업데이트합니다.

pacman -Syu

업데이트가 완료된 후 MSYS2를 다시 시작하고 다음 명령을 실행하여 설치합니다. 컴파일 도구:

pacman -S --needed base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-pkg-config
  1. PHP 확장 소스 코드 다운로드

PHP 확장을 컴파일하고 설치하기 전에 먼저 해당 소스 코드를 다운로드해야 합니다. PECL 또는 GitHub에서 확장에 해당하는 소스 코드를 찾을 수 있습니다.

  1. PHP 확장 프로그램 컴파일

소스 코드를 다운로드한 후 디렉터리에 압축을 푼 다음 MSYS2 터미널을 열고 해당 디렉터리로 들어갑니다.

cd /path/to/ext

다음 명령을 실행하여 컴파일합니다.

phpize
./configure
make

그 중 phpize 명령이 있습니다. 환경에 따라 자동으로 달라집니다. 구성 스크립트 및 makefile 파일을 생성합니다. 구성 명령은 환경을 확인하고 Makefile 파일을 생성하는 데 사용되며, make 명령은 확장을 컴파일하는 데 사용됩니다.

  1. PHP 확장 설치

컴파일이 완료된 후 다음 명령을 실행하여 PHP 확장을 설치합니다.

make install

이때 확장 dll 파일이 PHP의 확장 디렉터리에 설치됩니다. 확장을 추가할 수 있습니다. php.ini 파일 구성에서.

  1. PHP 확장 기능 테스트

확장 기능을 설치한 후 phpinfo 함수를 통해 확장 기능이 성공적으로 설치되었는지 확인할 수 있습니다. 명령줄에 다음 명령을 입력하세요.

php -r "phpinfo();"

출력 정보에서 확장 프로그램에 대한 관련 정보를 찾으세요.

요약

이 글에서는 Windows에서 PHP 확장을 컴파일하고 설치하는 단계를 간략하게 소개합니다. 컴파일을 시작하기 전에 PHP 버전에 해당하는 컴파일 도구를 설치한 후 확장 소스 코드를 다운로드하여 컴파일하고 설치해야 합니다. 디버깅을 용이하게 하려면 컴파일 중에 디버그 모드를 활성화하고 php.ini 파일에 확장 구성을 추가하는 것이 가장 좋습니다.

위 내용은 Windows PHP 확장 컴파일 및 설치의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.