windows下手工编译php扩展memcache的例子

本篇主要简述编译php及其扩展memcache,在阅读后面内容之前,建议先阅读一下官方文档(地址)。下面我们以php5.3为例。

一、编译环境

根据你的php版本选择相应的编译器:

php 5.3-5.4 :Visual C++ 9.0(Visual Studio 2008)

php 5.5+ :Visual C++ 11.0(Visual Studio 2012)

如果是php5.3-5.4,还要下载Windows SDK 6.1(下载地址)

 

二、编译文件

1、下载php源代码,http://snaps.php.net/

2、下载php sdk文件,http://windows.php.net/downloads/php-sdk/

那么我们这里下载这两个文件。

3、下载memcache扩展代码包,http://pecl.php.net/package/memcache

三、编译工作

1、创建编译目录“C:\php_sdk”

2、解压php-sdk-binary-tools-20110915.zip里面的文件到php_sdk目录下

3、在开始菜单找到并打开Windows SDK CMD Shell,然后执行

setenv /x86 /xp /release
cd php_sdk
bin\phpsdk_setvars.bat
bin\phpsdk_buildtree.bat phpdev

执行后,目录下会生成phpdev文件夹

4、进入C:\php_sdk\phpdev\vc9\x86\,把deps-5.3-vc9-x86.7z解压到该目录下,覆盖deps文件夹。

5、把php源代码也解压到x86目录下。

6、在x86目录下创建pecl文件夹,把memcache压缩包内容解压到pecl目录,并把文件夹名memcache-2.2.7改为memcache

7、在x86目录下创建obj文件夹,用于保存编译时生成的文件

8、执行以下命令,用于创建php编译配置

cd phpdev\vc9\x86\php5.3-201308211030
buildconf
configure --help >..\configure_help.txt
configure --disable-all --enable-snapshot-build --enable-cli --enable-cgi --enable-memcache=shared --enable-object-out-dir=..\obj --enable-session

注:配置中的–enable-memcache=shared意思是memcache要生成dll,否则就会和php打包到一起了

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

nmake

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

nmake snap

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

四、结束语

这篇文章讲述如何编译php及其本身自带的php扩展,与之前写的windows下编译php扩展 eAccelerator做区别。还可以生成哪些php扩展,具体可以看x86目录刚刚生成的帮助文档configure_help.txt

原文来自:lvtao.net博客

 

时间: 2024-10-22 08:25:11

windows下手工编译php扩展memcache的例子的相关文章

freerdp windows-freerdp代码在windows下的编译XP系统不适用

问题描述 freerdp代码在windows下的编译XP系统不适用 我在freerdp下载了源码,用cmake生成了VS2010的代码,经过编译成功后,生成的wfreerdp.exe在win7 win8 里可用,在XP里显示无法确定程序输入点....在kernel.dll上. 求有类似编译经验的同行,前辈指导. Q13148994 解决方案 这应该是代码兼容问题吧,不支持XP,XP太老了,微软都停止更新了 解决方案二: 使用VS2008编译试试,

FreeBSD下手工编译安装程序

虽然使用Ports Collection编译和安装软件非常简便,然而仍有两个理由来使用手工编译安装方式.一方面是Ports Collection中并不能涵盖所有的软件,有很多软件没有收入Ports Collection中.有很多原因使得一些很优秀的软件没有被收集入Ports Collection,例如,版权因素,或者没有志愿者对它移植到FreeBSD进行维护.另一方面,即使是通过Port来定制软件,仍需要了解了手工编译安装的过程和各种编译工具的使用,才能正常进行定制工作. 通常在FreeBSD下

boost在windows下的编译(vs2010)

首先说下环境,win7,vs2010. 先在http://www.boost.org/users/download/上下载boost安装包,我下的是1.52.0版. 按照说明,直接运行"bootstrap.bat",报"'cl'不是内部或外部命令"的错误,于是在环境变量中添加了cl.exe的路径--"C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\x86_ia64".再次运行&

Linux下PHP安装curl扩展支持https例子

问题:   线上运行的lamp服务器,默认yum安装的curl模块只支持http,不支持https.   解决方法:   编译安装curl,重新编译php,使php的curl模块支持https.   具体步骤:   1.下载curl   cd /usr/local/src  #进入安装包存放目录   wget http://curl.haxx.se/download/curl-7.44.0.tar.gz  #下载   2.安装curl   cd /usr/local/src   tar zxvf

windows下使用python发送控制键的例子

在windows下使用python进行图形类操作时,经常需要用到发送快捷键的情况,如ALT+TAB.crtl + F1.Fn + f1等之类的操作,利用win32com模块,可以很便利的进行该类操作.如下一个示例是打开Outlook程序,获取第一个元素,并将其内容复制到粘贴板的示例: import win32com.client shell = win32com.client.Dispatch("WScript.Shell") shell.Run("outlook"

在 Windows下静态编译Qt SDK

1.使用条件: (1)系统:Widows XP 萝卜版 (2)QT:QT4.6.2  windows版 2.使用步骤: (1)静态编译QT A:设置qmake.conf 用记事本打开D:\Qt\2010.02.1\qt\mkspecs\win32-g++下的qmake.conf 在"QMAKE_LEXFLAGS ="后面增加"-static",保存退出. B:运行,"开始---程序程序---Qt SDK by Nokia v2010.02.1 (open

linux中ubuntu下手动编译php-amqp扩展详细教程

PHP官网的amqp模块介绍在此,我也不多介绍.下面进入重点的安装环节. http://www.php.net/manual/en/book.amqp.php 用于ubuntu的默认源里面没有php5-amqp这个包,所以要用上amqp得考手动编译. 准备工作: # 安装php编译工具 sudo apt-get install php5-dev # 安装rabbitmq的库 sudo apt-get install librabbitmq-dev 然后如果你没有安装git话请安装一下git,因为

windows下javac编译通过,但运行结果有乱码,myeclipse下编译通过且运行无问题

问题描述 昨天写了个程序,用来做数据转发的,需要从txt文件里读数据, FileInputStream fis = new FileInputStream(path); InputStreamReader isr = new InputStreamReader(fis,"UTF-8"); 对文本进行解析之后使用socket发送byte[] bs = sendStr.toString().getBytes("UTF-8");os.println(new String(

Windows下PHP开发环境搭建教程(Apache+PHP+MySQL)_php技巧

由于换电脑或重装系统后常需要重新搭建PHP环境,此次简单记录一下Windows下搭建PHP环境的过程,具体步骤可以参照网上资料 准备工作: Windows下手工搭建PHP环境需要先下载相应的软件,需要注意的是Apache与PHP的版本必须保持一致(均为32位或64位),如果版本不一致将导致整合Apache与PHP不成功,即修改配置文件后启动Apache报如下图所示的错误: 其实在http://windows.php.net/download/上有很详细的描述,读者可以根据自己的需要选择相应的版本