목차
准备工作
构建环境
构建步骤
修改并重新编译
백엔드 개발 PHP 튜토리얼 在windows平台上构建自己的PHP(php5.3+)_PHP教程

在windows平台上构建自己的PHP(php5.3+)_PHP教程

Jul 20, 2016 am 11:14 AM
https php windows 존재하다 기사 짓다 ~의 번역하다 소유하다

这是一篇翻译的文章,原文参见:https://wiki.php.net/internals/windows/stepbystepbuild

顺便提一句,wiki.php.net有很多精彩的内容,想深入了解php的同学千万不要错过:)

准备工作

在windows平台上编译php,需要三样准备工作:

1,合适的编译环境,包括安装一个编译器、正确的SDK以及对应的binary tools

2,编译PHP需要用到的第三库、头文件

3,PHP源代码

构建环境

这是在windows平台上编译php最困难的部分,因为建立这样的编译环境需要大量的磁盘空间,可能会有数G

需求:

  • Microsoft Visual C++,官方的PHP版本支持VC++6.0和VC++9.0(即VC++2008),Express版本的也行。MinGW和其他的编译器是不被支持的。
  • 正确的windows SDK 或者Platform SDK,SDK需要与VC版本对应,详见https://wiki.php.net/internals/windows/windowssdk
  • 编译时用到的binary tools,详见http://windows.php.net/downloads/php-sdk/

注:

最新的php5.5可以用VC++9或者VC++11编译,不过5.5尚未正式发布。

如果使用的是VC6,则需要安装Windows Server Feb.2003 SDK,如果使用的VC9则需安装SDK6.1

构建步骤

1,安装vs2008

2,安装windows sdk 6.1

3,获得php 5.3源码,可以从此处获取snapshot (先不要解压)

4,创建文件夹c:\php-sdk

5,解压binary-tools.zip 至c:\php-sdk文件夹中。binary-tools.zip可以从此处获取(http://windows.php.net/downloads/php-sdk/)。解压后C:\php-sdk中应该包含bin,script,share等子目录。

6,打开windows sdk 6.1 shell,直接下述指令:

  PHP 5.2, 5.3 and 5.4:

setenv /x86 /xp /release

  PHP 5.5+:

setenv /x86 /2008 /release

7,

cd c:\php-sdk\

8,

bin\phpsdk_setvars.bat

9,

bin\phpsdk_buildtree.bat php53dev

10,现在解压第3步中下载的snapshot至C:\php-sdk\php53dev\vc9\x86文件夹中。解压完成之后,目录路径形如C:\php-sdk\php53dev\vc9\x86\php5.3-xyz。

11,在C:\php-sdk\php53dev\vc9\x86中,有一个deps文件夹。下载编译所依赖的一些libraries,并且解压至其中。这些libraries可以从http://wiki.php.net/internals/windows/libs获得。确保解压完成之后,deps下包含/include和/lib目录。(注:笔者直接从http://windows.php.net/downloads/php-sdk/下载了deps-5.3-vc9-x86.7z可以顺利编译通过)

12,继续在windows-sdk-shell中运行

cd C:\php-sdk\php53dev\vc9\x86\php5.3-xyz

13,

buildconf

14,查看编译选项

configure --help

15,根据自己的需要输入构建指令:

configure --disable-all --enable-cli 编译最简单的PHP内核并且只支持cli运行方式

(注: 一些扩展需要lib,头文件甚至其他程序,详见libs ,下载自己所需的版本并且解压至deps文件夹c:\php-sdk\php53\vc9\x86\deps)

16,

nmake

17,如果你需要压缩编译好的php文件,继续执行:

nmake snap

18,编译完的PHP位于C:\php-sdk\php53dev\vc9\x86\php5.3-SNAPSHOTTIME\Release_TS目录。

修改并重新编译

1,清除上次的编译结果

nmake clean

2,如果你需要重新config

buildconf --force

3,输入新的configure配置

configure --disable-all --enable-cli --enable-$remains

4,编译

nmake

 

如果只编译最精简的PHP(仅enable-cli),编译成功之后,可以观察一下编译了哪些EXT,SAPI:

除了standard(标准扩展),这个php版本只含有date,ereg,pcre,reflection,SPL几个扩展,它们的源码都可以在php-src/ext中找到。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/440292.htmlTechArticle这是一篇翻译的文章,原文参见:https://wiki.php.net/internals/windows/stepbystepbuild 顺便提一句,wiki.php.net有很多精彩的内容,想深入了解php的同学...
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
2 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

PI 노드 교육 : PI 노드 란 무엇입니까? Pi 노드를 설치하고 설정하는 방법은 무엇입니까? PI 노드 교육 : PI 노드 란 무엇입니까? Pi 노드를 설치하고 설정하는 방법은 무엇입니까? Mar 05, 2025 pm 05:57 PM

Pinetwork 노드에 대한 자세한 설명 및 설치 안내서이 기사에서는 Pinetwork Ecosystem을 자세히 소개합니다. Pi 노드, Pinetwork 생태계의 주요 역할을 수행하고 설치 및 구성을위한 전체 단계를 제공합니다. Pinetwork 블록 체인 테스트 네트워크가 출시 된 후, PI 노드는 다가오는 주요 네트워크 릴리스를 준비하여 테스트에 적극적으로 참여하는 많은 개척자들의 중요한 부분이되었습니다. 아직 Pinetwork를 모른다면 Picoin이 무엇인지 참조하십시오. 리스팅 가격은 얼마입니까? PI 사용, 광업 및 보안 분석. Pinetwork 란 무엇입니까? Pinetwork 프로젝트는 2019 년에 시작되었으며 독점적 인 Cryptocurrency Pi Coin을 소유하고 있습니다. 이 프로젝트는 모든 사람이 참여할 수있는 사람을 만드는 것을 목표로합니다.

Gate.io의 최신 버전 다운로드 Gate.io의 최신 버전 다운로드 Mar 05, 2025 pm 07:51 PM

cryptocurrency 여행을 시작하려면 Gate.io 앱을 다운로드해야합니까? 이 안내서는 iOS, Android 및 Windows 장치의 최신 버전 다운로드 단계를 자세히 설명합니다. 공식 웹 사이트를 방문하고 다운로드 링크를 찾은 다음 장치를 기반으로 적절한 옵션을 선택하십시오. iOS의 경우 App Store로 직접 이동하는 반면 Android 및 Windows 사용자는 수동 설치를 위해 APK 또는 Installer를 다운로드합니다. 설치되면 앱을 시작하고 계정을 설정하여 Cryptocurrency의 세계로 들어갈 수 있습니다.

Node.js 환경에서 403을 반환하는 타사 인터페이스 문제를 해결하는 방법은 무엇입니까? Node.js 환경에서 403을 반환하는 타사 인터페이스 문제를 해결하는 방법은 무엇입니까? Mar 31, 2025 pm 11:27 PM

Node.js 환경에서 403을 반환하는 타사 인터페이스의 문제를 해결하십시오. Node.js를 사용하여 타사 인터페이스를 호출 할 때 때때로 403을 반환하는 인터페이스에서 403의 오류가 발생합니다 ...

PHP에서 늦은 정적 결합을 설명하십시오 (정적 : :). PHP에서 늦은 정적 결합을 설명하십시오 (정적 : :). Apr 03, 2025 am 12:04 AM

정적 바인딩 (정적 : :)는 PHP에서 늦은 정적 바인딩 (LSB)을 구현하여 클래스를 정의하는 대신 정적 컨텍스트에서 호출 클래스를 참조 할 수 있습니다. 1) 구문 분석 프로세스는 런타임에 수행됩니다. 2) 상속 관계에서 통화 클래스를 찾아보십시오. 3) 성능 오버 헤드를 가져올 수 있습니다.

비트 코인에는 어떤 종류의 디스크보기 소프트웨어가 사용됩니까? 비트 코인에는 어떤 종류의 디스크보기 소프트웨어가 사용됩니까? Mar 17, 2025 pm 04:27 PM

올바른 비트 코인 시장보기 소프트웨어를 선택하는 것이 중요하며, 투자자가 시장 조건을 실시간으로 파악하고 더 현명한 투자 결정을 내릴 수 있습니다. 이 기사는 개인 요구 평가 (거래 빈도, 분석 깊이, 정보 요구 및 예산), 소프트웨어 유형 선택 (교환 인터페이스, 전문 소프트웨어, 시장 웹 사이트/앱), 핵심 기능 고려 사항 (데이터 신뢰성, 차트 도구, 커뮤니케이션 설정, 커뮤니케이션 커뮤니케이션 및 플랫폼 호환) 및 방향 권장 사항 (성기 재무 플랫폼, Cryptocurency Aggregation Platform, Community Communitation Software)을 포함하여 선택하는 방법을 안내합니다. 마지막으로, 몇 가지 소프트웨어를 더 시도하고 비교하여 귀하의 요구에 가장 적합한 도구를 선택하는 것이 좋습니다. 소프트웨어는 보조 도구 일 뿐이며 자신의 위험에 투자 할 때 조심해야합니다.

OKX 거래 플랫폼을 다운로드하는 방법 OKX 거래 플랫폼을 다운로드하는 방법 Mar 26, 2025 pm 05:18 PM

OKX 트레이딩 플랫폼은 모바일 장치 (Android 및 iOS) 및 컴퓨터 (Windows 및 MacOS)를 통해 다운로드 할 수 있습니다. 1. Android 사용자는 공식 웹 사이트 또는 Google Play에서 다운로드 할 수 있으며 보안 설정에주의를 기울여야합니다. 2. iOS 사용자는 앱 스토어를 통해 다운로드하거나 공식 발표를 따라 다른 방법을 얻을 수 있습니다. 3. 컴퓨터 사용자는 공식 웹 사이트에서 해당 시스템의 클라이언트를 다운로드 할 수 있습니다. 설치 후 다운로드 할 때 항상 공식 채널을 사용하고 등록, 로그인 및 보안 설정을 사용해야합니다.

JWT (JSON Web Tokens) 및 PHP API의 사용 사례를 설명하십시오. JWT (JSON Web Tokens) 및 PHP API의 사용 사례를 설명하십시오. Apr 05, 2025 am 12:04 AM

JWT는 주로 신분증 인증 및 정보 교환을 위해 당사자간에 정보를 안전하게 전송하는 데 사용되는 JSON을 기반으로 한 개방형 표준입니다. 1. JWT는 헤더, 페이로드 및 서명의 세 부분으로 구성됩니다. 2. JWT의 작업 원칙에는 세 가지 단계가 포함됩니다. JWT 생성, JWT 확인 및 Parsing Payload. 3. PHP에서 인증에 JWT를 사용하면 JWT를 생성하고 확인할 수 있으며 사용자 역할 및 권한 정보가 고급 사용에 포함될 수 있습니다. 4. 일반적인 오류에는 서명 검증 실패, 토큰 만료 및 대형 페이로드가 포함됩니다. 디버깅 기술에는 디버깅 도구 및 로깅 사용이 포함됩니다. 5. 성능 최적화 및 모범 사례에는 적절한 시그니처 알고리즘 사용, 타당성 기간 설정 합리적,

안전하고 신뢰할 수있는 Bitget 애플리케이션 다운로드 앱의 무료 설치 안전하고 신뢰할 수있는 Bitget 애플리케이션 다운로드 앱의 무료 설치 Mar 04, 2025 pm 10:27 PM

안전하고 신뢰할 수있는 디지털 자산 거래 서비스를 제공하기 위해 Bitget 응용 프로그램을 다운로드하는 데 오신 것을 환영합니다. 고급 플랫폼을 사용하면 포트폴리오를 쉽게 관리하고 매끄럽고 사용자 친화적 인 거래 경험을 즐길 수 있습니다. Bitget Applications는 높은 유동성과 심층 시장을 제공하여 최상의 실행 가격을 얻을 수 있도록합니다. 우리는 사용자를위한 안전하고 투명한 거래 환경을 조성하고 항상 귀하의 자금의 보안 우선 순위를 정합니다.

See all articles