Inhaltsverzeichnis
准备工作
构建环境
构建步骤
修改并重新编译
Heim Backend-Entwicklung PHP-Tutorial 在windows平台上构建自己的PHP(php5.3+)_PHP教程

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

Jul 20, 2016 am 11:14 AM
https php windows existieren Artikel 构建 von 翻译 eigen

这是一篇翻译的文章,原文参见: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的同学...
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PI -Knotenunterricht: Was ist ein PI -Knoten? Wie installiere und richte ich einen PI -Knoten ein? PI -Knotenunterricht: Was ist ein PI -Knoten? Wie installiere und richte ich einen PI -Knoten ein? Mar 05, 2025 pm 05:57 PM

Detaillierte Erläuterungs- und Installationshandbuch für Pinetwork -Knoten In diesem Artikel wird das Pinetwork -Ökosystem im Detail vorgestellt - PI -Knoten, eine Schlüsselrolle im Pinetwork -Ökosystem und vollständige Schritte für die Installation und Konfiguration. Nach dem Start des Pinetwork -Blockchain -Testnetzes sind PI -Knoten zu einem wichtigen Bestandteil vieler Pioniere geworden, die aktiv an den Tests teilnehmen und sich auf die bevorstehende Hauptnetzwerkveröffentlichung vorbereiten. Wenn Sie Pinetwork noch nicht kennen, wenden Sie sich bitte an was Picoin ist? Was ist der Preis für die Auflistung? PI -Nutzung, Bergbau und Sicherheitsanalyse. Was ist Pinetwork? Das Pinetwork -Projekt begann 2019 und besitzt seine exklusive Kryptowährung PI -Münze. Das Projekt zielt darauf ab, eine zu erstellen, an der jeder teilnehmen kann

Der neueste Version von Gate.io Der neueste Version von Gate.io Mar 05, 2025 pm 07:51 PM

Müssen Sie die App Gate.io herunterladen, um Ihre Kryptowährungsreise zu beginnen? In diesem Handbuch werden die neuesten Versionsschritte für iOS-, Android- und Windows -Geräte heruntergeladen. Besuchen Sie einfach die offizielle Website, suchen Sie den Download -Link und wählen Sie die entsprechende Option basierend auf Ihrem Gerät aus. Für iOS geht es direkt zum App Store, während Android- und Windows -Benutzer die apk oder das Installationsprogramm für die manuelle Installation herunterladen. Nach der Installation können Sie die App starten und Ihr Konto einrichten, um in die Welt der Kryptowährung einzutreten.

Wie löste ich das Problem der Schnittstelle zwischen Drittanbietern in der Node.js-Umgebung 403? Wie löste ich das Problem der Schnittstelle zwischen Drittanbietern in der Node.js-Umgebung 403? Mar 31, 2025 pm 11:27 PM

Lösen Sie das Problem der Schnittstelle zwischen Drittanbietern, die 403 in der Node.js-Umgebung zurückgeben. Wenn wir Node.js verwenden, um Schnittstellen von Drittanbietern aufzurufen, begegnen wir manchmal einen Fehler von 403 von der Schnittstelle, die 403 zurückgibt ...

Erklären Sie die späte statische Bindung in PHP (statisch: :). Erklären Sie die späte statische Bindung in PHP (statisch: :). Apr 03, 2025 am 12:04 AM

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

So laden Sie die OKX -Handelsplattform herunter So laden Sie die OKX -Handelsplattform herunter Mar 26, 2025 pm 05:18 PM

Die OKX -Handelsplattform kann über mobile Geräte (Android und iOS) und Computer (Windows und MacOS) heruntergeladen werden. 1. Android -Benutzer können es von der offiziellen Website oder Google Play herunterladen und müssen auf Sicherheitseinstellungen achten. 2. iOS -Benutzer können es über den App Store herunterladen oder die offizielle Ankündigung befolgen, um andere Methoden zu erhalten. 3. Computerbenutzer können den Client des entsprechenden Systems von der offiziellen Website herunterladen. Stellen Sie beim Herunterladen und Registrieren, Anmelden und Sicherheitseinstellungen nach der Installation immer sicher, dass Sie offizielle Kanäle verwenden.

Welche Art von Festplattenanschauungssoftware wird für Bitcoin verwendet Welche Art von Festplattenanschauungssoftware wird für Bitcoin verwendet Mar 17, 2025 pm 04:27 PM

Die Auswahl der richtigen Bitcoin -Marktbeobachtungssoftware ist von entscheidender Bedeutung. Sie kann den Anlegern helfen, Marktbedingungen in Echtzeit zu erfassen und intelligenteren Investitionsentscheidungen zu treffen. In diesem Artikel wird Sie beantragt, wie Sie eine Auswahl treffen und die Bewertung der persönlichen Bedürfnisse (Handelsfrequenz, Analysetiefe, Informationsbedürfnisse und Budget), Softwaretypauswahl (Exchange -Schnittstelle, professionelle Software, Marktwebsite/App), kernfunktionelle Überlegungen (Datenzuverlässigkeit, Diagramm -Tools, benutzerdefinierte Einstellungen, Community Communication und Platform -Kompatibilität) und Richtungsempfehlungen (Reifungs -Finanz -Plattform, Cryptocurity -Aggregation, Community -Empfehlungssoftware) abdecken. Schließlich wird empfohlen, ein paar weitere Software zu probieren und es zu vergleichen, um das Tool auszuwählen, das Ihren Anforderungen am besten entspricht. Bitte denken Sie daran, dass Software nur ein Hilfstool ist, und Sie müssen vorsichtig sein, wenn Sie auf eigenes Risiko investieren.

Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Erklären Sie JSON Web Tokens (JWT) und ihren Anwendungsfall in PHP -APIs. Apr 05, 2025 am 12:04 AM

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Kostenlose Installation der sicheren und vertrauenswürdigen Bitget -Anwendung Download App Kostenlose Installation der sicheren und vertrauenswürdigen Bitget -Anwendung Download App Mar 04, 2025 pm 10:27 PM

Willkommen beim Download der Bitget -Anwendung, um sichere und zuverlässige Handelsdienste für digitale Asset -Handel anzubieten. Mit unserer fortschrittlichen Plattform können Sie Ihr Portfolio problemlos verwalten und ein reibungsloses und benutzerfreundliches Handelserlebnis genießen. Bitget-Anwendungen bieten hohe Liquiditäts- und ausführliche Märkte, um sicherzustellen, dass Sie den besten Ausführungspreis erhalten. Wir sind bestrebt, ein sicheres und transparentes Handelsumfeld für unsere Benutzer zu schaffen, und priorisieren immer die Sicherheit Ihrer Mittel.

See all articles