zoukankan      html  css  js  c++  java
  • 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查看加载模板列表

  • 相关阅读:
    redis主从之过期key判断
    PHP之回调、匿名函数
    调试printf,fprintf (转)
    第一天,来报道
    hdu 4464 browsing history
    腾讯编程马拉松2012第一题
    今天面试悲剧了,看来面试前看考题是很关键的.
    JQuery访问WebService(可访问Java[Xfire])
    自己留备份,不解释.
    MYSQL UNION AND UNION ALL 的区别!
  • 原文地址:https://www.cnblogs.com/ranh/p/3632471.html
Copyright © 2011-2022 走看看