php的扩展memcache,不支持cas,所以我们要装memcached扩展,memcached扩展是基于libmemcached,所以要先安装libmemcached

一、下载软件

1、libmemcached下载地址:https://launchpad.net/libmemcached/+download

文件:memcached-2.2.0.tgz

2、php-memcached下载地址:http://pecl.php.net/package/memcached

文件:libmemcached-1.0.18.tar.gz

二、安装libmemcached

[root@vm15 local]# mkdir -p libmemcached
[root@vm15 local]# tar zxvf libmemcached-1.0.18.tar.gz 
[root@vm15 local]# cd libmemcached-1.0.18
[root@vm15 libmemcached-1.0.18]# ./configure --prefix=/usr/local/libmemcached --with-memcached
[root@vm15 libmemcached-1.0.18]# make
[root@vm15 libmemcached-1.0.18]# make install

三、安装php-memcached

[root@vm15 local]# mkdir -p phpmemcached 
[root@vm15 local]# tar zxvf memcached-2.2.0.tgz
[root@vm15 local]# cd memcached-2.2.0
[root@vm15 memcached-2.2.0]# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version: 20131106
Zend Module Api No: 20131226
Zend Extension Api No: 220131226
[root@vm15 memcached-2.2.0]# ./configure --enable-memcached --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached --disable-memcached
-sasl
[root@vm15 memcached-2.2.0]# make
[root@vm15 memcached-2.2.0]# make install
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-zts-20131226/
[root@vm15 memcached-2.2.0]# ll /usr/local/php/lib/php/extensions/no-debug-zts-20131226/

total 2140
-rwxr-xr-x. 1 root root 325608 Dec 30 15:59 memcached.so
-rwxr-xr-x. 1 root root 453766 Dec 30 17:44 memcache.so
-rwxr-xr-x. 1 root root 540834 Dec 19 15:38 opcache.so
-rwxr-xr-x. 1 root root 861055 Dec 30 16:47 redis.so

[root@vm15 memcached-2.2.0]# vi + /usr/local/php/lib/php.ini
加上extension=memcached.so
[root@vm15 memcached-2.2.0]# /usr/local/apache2/bin/apachectl restart
查看phpinfo可以看到支持了

四、安装遇到的问题
1、安装libmemcached过程中不要忘了,--with-memcached,不然会提示你

checking for memcached... no
configure: error: "could not find memcached binary"

2、你的memcached是不是1.2.4以上的,如果不是会提示你

clients/ms_thread.o: In function `ms_setup_thread':
/home/zhangy/libmemcached-0.42/clients/ms_thread.c:225: undefined reference to `__sync_fetch_and_add_4'
clients/ms_thread.o:/home/zhangy/libmemcached-0.42/clients/ms_thread.c:196: more undefined references to `__sync_fetch_and_add_4' follow
collect2: ld returned 1 exit status
make[2]: *** [clients/memslap] Error 1
make[2]: Leaving directory `/home/zhangy/libmemcached-0.42'

解决办法是--disable-64bit CFLAGS="-O3 -march=i686",如果不用这个64位的long型数据,我想php扩展memcached,memcache也就没什么区别了,装memcached也就没什么意思了。

 
 

编译libmemcached的更多相关文章

  1. linux下memcached的安装

    系统镜像及环境要求: 1) 适用于windows系列版本及开发者的相关教程  请参考本文1.0开始安装步骤 2)  Centos 6系列及Aliyun Linux 6系列以上版本 请参考本文2.0开始 ...

  2. php Memcached

    PHP 连接 Memcached 服务 在前面章节中我们已经介绍了如何安装 Memcached 服务,接下来我们为大家介绍 PHP 如何使用 Memcached 服务. PHP Memcache 扩展 ...

  3. Mac下安装php-memcached扩展

    [libmemcached安装] libmemcached可以通过直接下载后解压也可以采用wget下载 先下载libmemcached:方式一:libmemcached下载地址:https://lau ...

  4. centos7上安装memcached以及PHP安装memcached扩展(二)

    开始在 PHP 中使用 Memcached 前, 我们需要确保已经安装了 Memcached  服务,接下来安装 php-memcached 扩展. PHP Memcached 扩展安装 第一步:如果 ...

  5. 转载:Centos7 从零编译配置Memcached

    序言 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度. Memca ...

  6. [原创]Centos7 从零编译配置Memcached

    序言 Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态.数据库驱动网站的速度. Memca ...

  7. Centos7 编译安装 Nginx PHP Mariadb Memcached 扩展 ZendOpcache扩展 (实测 笔记 Centos 7.3 + Mariadb 10.1.20 + Nginx 1.10.2 + PHP 7.1.0 + Laravel 5.3 )

    环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1611.iso 安装步骤: 1.准备 1.0 查看硬 ...

  8. [转]编译安装libevent,memcache,以及php的memcached扩展

    一 安装libevent 1.去官网http://libevent.org/ 下载最新源码,我用的是libevent-2.0.20-stable.tar.gz 2.解压到/usr/src目录 ,执行命 ...

  9. centos6.5编译安装lamp开发环境

    一.系统以及软件的准备 系统及编译安装包的下载地址:http://pan.baidu.com/s/1jIjqinc   密码:ghc2 说明:由于centos6.5是分卷压缩的,且压缩为三个压缩包,所 ...

随机推荐

  1. postgresql导出sql执行结果到文件的方法(转)

    原文:http://blog.sina.com.cn/s/blog_840dd283010178jz.html 对于一些特殊字符,比如字符

  2. restfull规范

    web服务交互 我们在浏览器中能看到的每个网站,都是一个web服务.那么我们在提供每个web服务的时候, 都需要前后端交互,前后端交互就一定有一些实现方案,我们通常叫web服务交互方案. 目前主流的三 ...

  3. springMvc异常之 For input string: "show"

    异常提示: For input string: "show" 异常原因: 使用@PathVariable方式获取值,返回类型为String return "redirec ...

  4. Python np.newaxis

    np.newaxis的功能是插入新维度,看下面的例子: a=np.array([1,2,3,4,5])print a.shape print a 输出结果 (5,)[1 2 3 4 5] 可以看出a是 ...

  5. vim初级命令

    命令 说明 光标移动   h 左 l(小写L) 右 j 下 k 上 w 移动到下一个单词 b 移动到上一个单词     插入   i 在当前光标处进行编辑 I(大写i) 在行首插入 A 在行末插入 a ...

  6. mac 安装Sequel Pro

    安装命令如下 Install the App Press Command+Space and type Terminal and press enter/return key. Run in Term ...

  7. 2017浙江省赛 C - What Kind of Friends Are You? ZOJ - 3960

    地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3960 题目: Japari Park is a large zoo ...

  8. hu3613 Best Reward

    地址:http://acm.hdu.edu.cn/showproblem.php?pid=3613 题目: Best Reward Time Limit: 2000/1000 MS (Java/Oth ...

  9. iOS 使用markdown 实现编辑和预览文本

    注意要点: 1.在iOS 可以依赖UIWebview 来实现 2.丰富的UI样式依赖 html 的样式, js 调用插入markdown内容呈现出来 3.实现markdown编辑快捷键:参考githu ...

  10. U盘在制作Ubuntu启动盘后Windows系统下显示空间不对的解决办法(Ubuntu系统下格式化U盘的方法)

    用Ubuntu系统自带的启动盘制作工具后,将U盘拿到Windows系统下使用显示出的空间与U盘大小不同. 解决该问题的办法: 使用Linux终端: 第一步:sudo fdisk -l 这个命令主要是查 ...