windows下用vc开发php扩展

www.php.net下载php源码

 

windows.php.net下载windows二进制包

版本号保持一致

二进制包注意:

编译器版本 目前有vc9和vc11两个版本

线程安全/非线程安全

x86/x64

 

http://windows.php.net/downloads/php-sdk/php-sdk-binary-tools-20110915.zip下载编译工具

从vc中进入命令行方式,设置刚解压的目录的bin子目录到path环境变量

然后在源码目录执行buildconf.bat

configure  //线程安全版本

configure --disable-zts //非线程安全版本

将生成main/config.win32.h文件

修改config.win32.h中的PHP_COMPILE_ID为vc9或者vc11,如果你的vc ide版本符合,就不用修改了

 

在源码包的ext目录下执行

php.exe ext_skel_win32.php -extname 扩展名称

会在ext目录以扩展名称建立文件夹,并含有扩展框架文件

 

进入ext目录有vc6的工程文件dsp,点击打开,根据你的vc版本按提示升级工程

 

复制php二进制目录下的dev目录下的lib文件到扩展工程目录,带ts的是线程安全版本,不带ts的是非线程安全版本

 

修改工程属性。编译方式为Realease_TS,因为没有debug lib,所以只能选relealse方式

 

如果是非线程安全版本,在工程属性的预定义常量中去除ZTS = 1

 

生成

 

复制在php源码目录Release_TS目录生成的php_扩展名.dll到二进制目录的ext目录中

修改二进制目录的php.ini加载扩展

 

执行php -m查看加载模板列表

 

posted @ 2014-03-29 14:06  ranhuan  阅读(1000)  评论(0编辑  收藏  举报