转自: http://www.zhurouyoudu.com/index.php/archives/773/
本文参考了官方教程:https://wiki.php.net/internals/windows/stepbystepbuild ,因之前群里有人提到过,就更新了下。
需要说明的是,官方教程所用的是VS2008 Express版,我使用的是vs2010 旗舰版(VS2012也是支持的),已经包含了windows sdk,所以也就不需要下载windows SDK了。其次,不要试图尝试用MingW或CYGWIN等来编译代码,这都是自找麻烦。
编译:
1、首先下载PHP-SDK,这些是编译PHP过程中需要的一些辅助工具,如词法、语法解析等。下载最新的php-sdk-binary-tools-20110915.zip,解压到c:\php-sdk。注意,解压后,这个目录下应该有bin和script、share三个子目录
2、到c:\php-sdk目录下,按住SHIFT后右键,选择“在此处打开命令窗口”,打开CMD,运行vcvarsall.bat来设置好编译环境变量。
c:\php-sdk>E:\dev\vs2010\VC\vcvarsall.bat (根据你自己的安装位置而定)
bin\phpsdk_setvars.bat
bin\phpsdk_buildtree.bat php54dev
这样,在c:\php-sdk目录下又多了一个php54dev目录
3、接着继续在php-sdk目录下载deps-5.4-vc9-x86.7z,并解压到 c:\php-sdk\php54dev\vc9\x86\目录下。
4、下载PHP5.4 最新源代码。到http://snaps.php.net/ 下载 php-5.4-dev (tar.xz) ,解压目录下所有文件到c:\php-sdk\php54dev\vc9\x86\deps\php-5.4目录(此处php-5.4为我们新建的目录)。
5、可以开始编译了。进入PHP源码目录,c:\php-sdk\php54dev\vc9\x86\deps\php-5.4,运行buildconf,之后我们就可以用configure --help 命令查看构建选项了。可以先试着编译php了。最开始,一般编译尽可能少的模块,先让核心能正常编译出来。
configure --disable-all --enable-cli
nmake
稍等一会,php5.4最核心部分及一个命令行工具就编译出来了(这中间的警告信息可以不用顾及)。
cd Release_TS
php -m
就可以看到
[PHP Modules]
Core
date
ereg
pcre
Reflection
SPL
standard
[Zend Modules]
然后我们也可以试着加入更多的模块,比如:configure --disable-all --enable-cli --with-sqlite3 --with-mcrypt=static --with-mysqlnd --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-gd --with-mhash --with-curl --with-gettext --with-iconv --enable-mbstring --enable-session
然后运行nmake重新编译。遇到出错信息google即可(一些扩展的编译需要依赖第三方库,可以到https://wiki.php.net/internals/windows/libs下载)。
如果修改了源码等需要再次编译,可运行make clean,然后重新buildconf,configure.
编译PECL扩展的步骤在官方网页上也列出来了,需要时参考即可
相关推荐
实际上我最终目的是编译得到支持 PHP5.4 的 php_xdebug.dll,而在此之前,成功编译 PHP5.4 是必须的。 编译环境以及相关软件包: 1.Microsoft Visual C++ 2008 Express Edition with SP1 2.Windows SDK 6.1 3.PHP ...
这是国外最新编译的32位PHP 5.4 版本的ffmpeg-php。 需要64位的,请查看我发布的另外一个资源。 除了php_ffmpeg.dll放到PHP的 ext目录下,其他全部放到C:\Windows\System32下。
在Windows环境下编译PHP-beast扩展是一个较为复杂的过程,涉及到选择合适的编译器、设置编译环境、准备编译文件、以及执行具体的编译步骤。本文将详细说明如何在Windows系统中编译PHP-beast扩展,同时会提供必要的...
描述中提到的“windows环境下php5.4ts所用的php_phpredis.dll”,表明这个dll文件是为在Windows操作系统上运行的PHP 5.4线程安全版本编译的。在Windows平台上,PHP有两种构建方式:NTS(非线程安全)和TS(线程安全...
在Web服务器环境下,结合PHP5.4使用,可以实现动态生成图像、图像处理等功能。以下将详细介绍在Apache和IIS两种Web服务器上安装PHP5.4和ImageMagick的步骤。 ### Apache环境安装 1. **下载与安装Apache**:首先...
标签中的 "ZendLoader" 和 "ZendGuard" 指的是上述的两个组件,"PHP5.4" 指明了适用的 PHP 版本,"Windows" 表示这个环境是在 Windows 操作系统上搭建的。 **文件名称解析:** "ZendGuardLoader-php-5.4-Windows" ...
【标题】"php5.4_x86_ts.rar" 指的是一个针对Windows 2003操作系统的PHP 5.4版本的32位(x86)线程安全(TS)版本的压缩包文件。这个压缩包是为初学者设计的,用于搭建PHP开发环境。 【描述】中提到的“线程安全”...
**PHP 5.4 wincache.dll:提升Windows平台下的PHP性能** PHP 5.4是PHP的一个重要版本,引入了许多新特性和性能优化。在Windows环境下,开发人员经常使用wincache扩展来进一步提高PHP应用程序的运行效率。wincache....
总的来说,PHP 5.4的APC扩展通过DLL文件在Windows系统上提供了强大的性能优化功能。正确安装和配置APC,可以显著提升PHP应用的运行效率,降低服务器负载。不过,随着PHP版本的更新,开发者应关注并考虑迁移到更适合...
总结来说,PHP_Memcache-5.4-nts-vc9-x86是一个专为PHP 5.4且运行在32位Windows环境下的非线程安全版本的Memcache扩展,它提供了与Memcache服务器交互的能力,对于提高网站性能有着显著的效果。正确配置和使用这个...
标题 "php_redis.dll for php5.4 ntf ( redis 和php扩展及php配置文件 )" 描述的是一个专为PHP 5.4版本编译的NTF(可能指的是NTFS文件系统)环境准备的Redis扩展。这个扩展使得PHP能够与Redis数据库进行交互,Redis...
这里我们关注的是在Windows Server 2008 R2操作系统上搭建一个基于PHP5.4、Apache2.4和MySQL5.6的环境。这个配置包提供了必要的组件来实现这一目标。 首先,我们需要了解这三个主要组件的作用: 1. **Windows ...
这个32位的exe安装包专为Windows 32位操作系统设计,确保在32位的Windows环境下能顺利运行PHP服务。 PHP 5.4的关键特性包括: 1. **Traits**:PHP 5.4引入了Traits,这是一个代码重用机制,类似于其他面向对象语言...
标题中的“php 5.4 vc9 nts 版本redis 与 igbinary”涉及到的是在PHP 5.4版本的环境下,使用VC9编译器构建的Non Thread Safe(NTS)版本,同时集成Redis扩展和igbinary扩展的相关内容。这两个扩展在PHP中扮演着重要...
在本篇中,我们将详细讲解如何在 PHP 5.4.x 环境下安装并使用 PHP Redis 扩展,同时也会涉及 Redis 服务端的版本要求。 **一、Redis 服务端安装与配置** 在开始 PHP Redis 的安装前,你需要确保已经安装了 Redis ...
在本例中,文件名`php内核x86-ffmpeg6-php5.4-win32-vc9`表明这是一个针对32位Windows系统的VC9编译的PHP5.4 FFmpeg扩展。确保你的PHP环境也是32位且使用VC9编译器构建的。 2. **拷贝文件**:将下载的扩展文件解压...
描述 "php5.4_redis的扩展文件,用于实现window上也可以使用redis." 明确指出这个扩展的目的是使 PHP 5.4 在 Windows 操作系统中能够与 Redis 数据库进行交互。Redis 是一个高性能的键值存储系统,常用于缓存和数据...
关于 PHP 5.4 Memcache 扩展包的安装和配置,首先你需要确保你的 PHP 环境已经搭建好,并且具备编译扩展的能力。通常,你可以通过以下步骤来安装: 1. **下载源代码**:访问 PHP 官方仓库或第三方资源,获取适合 ...
标题“php-5.4.20-nts-Win32-VC9-x86”表明这是一个基于PHP编程语言的特定版本,适用于Windows 32位操作系统。这个版本是5.4.20,编译器为Visual C++ 9(VC9),并且是非线程安全(Non-Thread Safe,简称NTS)的。让...