Maison > développement back-end > tutoriel php > windows环境下php和Php扩展编译,扩展dll文件编译

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

WBOY
Libérer: 2016-08-08 09:24:38
original
1354 Les gens l'ont consulté

工作过程中需要编译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教程有兴趣的朋友有所帮助。

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal