工作过程中需要编译php扩展的dll格式文件 , 经过1天的折腾,终于编译出来了,下面以编译php5.3.28 下runkit扩展为例 , 官方的windows环境下php编译过程参考下面这两篇文章:
https://wiki.php.net/internals/windows/stepbystepbuild
http://blog.csdn.net/mycwq/article/details/10165955
php5.3.28 , runkit
编译的过程基本就是跟文档一致 , 注意的是 ,runkit源码建议去github下载最新的 , 要不可能编译出错
runkit:
https://github.com/zenovich/runkit
windows环境下编译php最难的就是环境搭建了 ,包括 vs2008安装、windows SDK6.1安装。环境搭建好了后
编译工作
1、创建编译目录“C:\php_sdk”
2、解压php-sdk-binary-tools-20110915.zip里面的文件到php_sdk目录下
3、在开始菜单找到并打开Windows SDK CMD Shell (注意一定是SDK的shell , 不是DOS操作的cmd窗口),然后执行
[plain] view plaincopy
执行后,目录下会生成phpdev文件夹
4、进入C:\php_sdk\phpdev\vc9\x86\,把deps-5.3-vc9-x86.7z解压到该目录下,覆盖deps文件夹。(php sdk)
5、把php源代码也解压到x86目录下。
6、把runkit压缩包内容解压到php解压后源码下的ext目录下,并把文件夹名runkit-master改为runkit
7、在x86目录下创建obj文件夹,用于保存编译时生成的文件
8、执行以下命令,用于创建php编译配置
[plain] view plaincopy
注:配置中的--enable-runkit=shared意思是 memcache 以 dll 形式生成,否则就和php集成在一起了。
如果提示bison.exe不存在,执行命令,再重新执行下面的操作(经过上面的配置后,bison.exe应该在 c:\php_sdk\bin目录下 , 把这个目录放到环境变量中就行了)
[plain] view plaincopy
9、编译php,执行以下命令
[plain] view plaincopy
10、如果想打包php,执行以下命令
[plain] view plaincopy
到这里,编译工作应该结束了。可以在C:\php_sdk\phpdev\vc9\x86\obj\ReleaseTS\目录中找到php_memcache.dll
以上就介绍了windows环境下php和Php扩展编译,扩展dll文件编译,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。