在windows平台上构建自己的PHP实现方法(仅适用于php5.2)


Posted in PHP onJuly 05, 2013

构建步骤
1, 安装vs2008
2, 安装windows sdk 6.1
3, 下载php 5.2源码,可以从此处获取Releases (先不要解压)
4, 下载bindlib_w32.zip,点击下载bindlib_w32.zip
5, 下载win32build.zip,点击下载win32build.zip
6, 下载libxml2,iconv,zlib等库 http://www.zlatkovic.com/pub/libxml/
7, 创建C:\php5.2-mybuild (也可以改成你想要的目录,比如C:\test等等)。 接着创建C:\php5.2-mybuild\win32build, C:\php5.2-mybuild\bindlib_w32, C:\php5.2-mybuild\php-src 。
8, 解压 win32build.zip 到 C:\php5.2-mybuild\win32build 。 解压后C:\php5.2-mybuild\win32build应该包含bin,include,lib等子目录。
9, 解压 bindlib_w32.zip 到 C:\php5.2-mybuild\bindlib_w32 。
    编译bindlib_w32,生成的resolv.lib 放到 C:\php5.2-mybuild\win32build\lib 中,覆盖掉原来的。
10,解压 php 5.2源码 到 C:\php5.2-mybuild\php-src
11,打开windows sdk 6.1 shell,键入下述指令:

setenv /x86 /xp /release

12,
cd C:\php5.2-mybuild\php-src

13,
buildconf

14,查看编译选项
cscript /nologo configure.js --help

15,根据自己的需要输入构建指令:
cscript /nologo configure.js --enable-object-out-dir="C:\php5.2-mybuild" --with-php-build="C:\php5.2-mybuild\win32build" --disable-all  --enable-cli

16,
nmake

17,make完之后,可以看到C:\php5.2-mybuild目录下新增了Release_TS文件夹,该文件夹用于存放build之后的文件,可以通过修改--enable-object-out-dir来配置自己指定的输出目录。
PHP 相关文章推荐
用Apache反向代理设置对外的WWW和文件服务器
Oct 09 PHP
PHP 中执行排序与 MySQL 中排序
Apr 21 PHP
destoon各类调用汇总
Jun 20 PHP
php 删除cookie方法详解
Dec 01 PHP
ThinkPHP采用原生query实现关联查询left join实例
Dec 02 PHP
PHP实现的多文件上传类及用法示例
May 06 PHP
php实现图片上传、剪切功能
May 07 PHP
php getcwd与dirname(__FILE__)区别详解
Sep 24 PHP
PHP长连接实现与使用方法详解
Feb 11 PHP
PHP结合jquery ajax实现上传多张图片,并限制图片大小操作示例
Mar 01 PHP
Laravel框架自定义公共函数的引入操作示例
Apr 16 PHP
PHP实现简单注册登录系统
Dec 28 PHP
php中如何同时使用session和cookie来保存用户登录信息
Jul 05 #PHP
php记录代码执行时间(实现代码)
Jul 05 #PHP
如何修改和添加Apache的默认站点目录
Jul 05 #PHP
解析php类的注册与自动加载
Jul 05 #PHP
php 注册时输入信息验证器的实现详解
Jul 05 #PHP
php解析html类库simple_html_dom(详细介绍)
Jul 05 #PHP
Apache实现Web Server负载均衡详解(不考虑Session版)
Jul 05 #PHP
You might like
php curl基本操作详解
2013/07/23 PHP
ThinkPHP之M方法实例详解
2014/06/20 PHP
使用php方法curl抓取AJAX异步内容思路分析及代码分享
2014/08/25 PHP
PHP获取文件夹大小函数用法实例
2015/07/01 PHP
thinkphp5使用无限极分类
2019/02/18 PHP
ThinkPHP5.1的权限控制怎么写?分享一个AUTH权限控制
2021/03/09 PHP
几个高效,简洁的字符处理函数
2007/04/12 Javascript
JavaScript Title、alt提示(Tips)实现源码解读
2010/12/12 Javascript
关于extjs4如何获取grid修改后的数据的问题
2013/08/07 Javascript
JavaScript验证电子邮箱的函数
2014/08/22 Javascript
jQuery中fadeOut()方法用法实例
2014/12/24 Javascript
JavaScript的9种继承实现方式归纳
2015/05/18 Javascript
常用javascript表单验证汇总
2020/07/20 Javascript
Web Uploader文件上传插件使用详解
2016/05/10 Javascript
js动态添加的DIV中的onclick事件简单实例
2016/07/25 Javascript
原生js封装的一些jquery方法(详解)
2016/09/20 Javascript
jQuery Validation Engine验证控件调用外部函数验证的方法
2017/01/18 Javascript
Vue自定义指令详解
2017/07/28 Javascript
详解webpack + vue + node 打造单页面(入门篇)
2017/09/23 Javascript
微信小程序实现之手势锁功能实例代码
2018/07/19 Javascript
Angular事件之不同组件间传递数据的方法
2018/11/15 Javascript
使用 vue 实例更好的监听事件及vue实例的方法
2019/04/22 Javascript
如何利用JavaScript编写一个格斗小游戏
2021/01/06 Javascript
[02:48]DOTA2英雄基础教程 暗夜魔王
2013/12/12 DOTA
Python中turtle作图示例
2017/11/15 Python
python读取文本绘制动态速度曲线
2018/06/21 Python
pandas求两个表格不相交的集合方法
2018/12/08 Python
python如何解析配置文件并应用到项目中
2019/06/27 Python
基于Python获取城市近7天天气预报
2019/11/26 Python
Anaconda+VSCode配置tensorflow开发环境的教程详解
2020/03/30 Python
Keras在训练期间可视化训练误差和测试误差实例
2020/06/16 Python
CSS中垂直居中的简单实现方法
2015/07/06 HTML / CSS
一些网络技术方面的面试题
2014/05/01 面试题
感恩教师节主题班会
2015/08/12 职场文书
高中化学教学反思
2016/02/22 职场文书
MySQL限制查询和数据排序介绍
2022/03/25 MySQL