欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

windows环境下php和Php扩展编译,扩展dll文件编译

程序员文章站 2022-05-30 17:36:11
...
工作过程中需要编译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

  1. setenv /x86 /xp /release //这一句一定要执行成功,要不怎么都不会编译成功
  2. cd php_sdk
  3. bin\phpsdk_setvars.bat
  4. bin\phpsdk_buildtree.bat phpdev

执行后,目录下会生成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

  1. cd phpdev\vc9\x86\php5.3-201308211030
  2. buildconf
  3. configure --help >..\configure_help.txt
  4. configure --disable-all --enable-cli --enable-runkit=shared --enable-object-out-dir=..\obj

注:配置中的--enable-runkit=shared意思是 memcache 以 dll 形式生成,否则就和php集成在一起了。

如果提示bison.exe不存在,执行命令,再重新执行下面的操作(经过上面的配置后,bison.exe应该在 c:\php_sdk\bin目录下 , 把这个目录放到环境变量中就行了

[plain] view plaincopy

  1. set path=%path%;C:\php_sdk\bin

9、编译php,执行以下命令

[plain] view plaincopy

  1. nmake

10、如果想打包php,执行以下命令

[plain] view plaincopy

  1. nmake snap

到这里,编译工作应该结束了。可以在C:\php_sdk\phpdev\vc9\x86\obj\ReleaseTS\目录中找到php_memcache.dll


以上就介绍了windows环境下php和Php扩展编译,扩展dll文件编译,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。