linux下为php5.5安装apc失败解决办法

来源:互联网 发布:淘宝bug 编辑:程序博客网 时间:2024/04/29 16:57

    运行环境:操作系统——centos6.5,php版本5.5.10    

    最近研究缓存的发现了apc,想要研究下,于是乎在php官方扩展库中http://pecl.php.net/package/apc中下载了最新版本(3.1.13)的apc扩展,然后像以往安装php扩展一样,phpize、configure、make,但是意想不到的情况出现了,make的时候居然出错,错误提示大致如下

/home/centos/Downloads/apc/apc_compile.c:2379:12: error: 'zend_trait_alias' has no member named 'function'/home/centos/Downloads/apc/apc_compile.c:2380:9: error: 'zend_trait_alias' has no member named 'function'/home/centos/Downloads/apc/apc_compile.c:2380:9: error: 'zend_trait_alias' has no member named 'function'/home/centos/Downloads/apc/apc_compile.c: In function 'apc_copy_trait_precedence':/home/centos/Downloads/apc/apc_compile.c:2416:12: error: 'zend_trait_precedence' has no member named 'function'/home/centos/Downloads/apc/apc_compile.c:2417:9: error: 'zend_trait_precedence' has no member named 'function'/home/centos/Downloads/apc/apc_compile.c:2417:9: error: 'zend_trait_precedence' has no member named 'function'make: *** [apc_compile.lo] Error 1ERROR: `make' failed
    这时候就需要万能的百度,经过百度之后发现出现这种问题的大部分是php5.5版本的,于是便查了下正在使用的php版本,没想到还真是php5.5的,虽然遇到问题的人不少,但是解决问题的方法却没有,大部分说法就是apc扩展不支持php5.5,难道就没有解决办法了吗?凭借一股韧劲,小编换了N种关键词,点击了N个网页,终于皇天不负有心人,让小编找到了一个解决方法,具体解决办法如下:

    点击http://git.php.net/?p=pecl/caching/apc.git,下载最新版本的apc安装即可解决。

    上述网址是apc的官方源码库,相比于官方扩展库,源码库多了更多的版本(包括了各种修改版本),我们点击“master”,查看更详细的修改信息,如果细心的朋友可能会发现这么一条描述“Fix build with latest PHP 5.5”,换句话说,也就是从这个版本才开始修复PHP 5.5的bug,安装之前的版本在PHP 5.5下仍会报错,那么这个版本是否真的解决了这个问题呢,小编下载下来测试了下,安装之后的确没有报错了,又下载了一个最新版本的,也没有报错,那么之前的呢?下载测试了下,仍然报错,果然就是从这个版本开始才真正修复了PHP 5.5不能安装apc的bug。

    特别说明:由于官方在apc 3.1.14 release版本之后才修复了这个bug,因此使用apc 3.1.14版本的时候仍会报错,如果想要不报错,需要下载安装“Fix build with latest PHP 5.5”描述之后的版本。

    

0 0