php_gearman-1.0.3与gearmand-1.1.0在centos上的安装补丁 |
发布: 2012-09-14 09:23 |
1、gearmand开发活跃,现已从0.x时代跨入了1.x时代 但是,有点问题,gearmand的编译系统对比较老的linux发行版不太友好 从0.x起,在centos-5.x上安装经常出编译问题,虽然其代码本身没有问题。 2、php-gearman扩展的开发速度落后gearmand的开发,不得不在升级gearmand的时候, 对php-gearman扩展稍做修改才能正常编译执行。 3、对gearmand-1.1.0包的修改,以linux sed命令方式做自动修改。 ### centos 5.x patch sed 's/Werror/O2/g' Makefile > ma mv -v ma Makefile sed 's/const//g' libtest/memcached.hpp > ma mv -v ma libtest/memcached.hpp # cp -v ../gearman.h ./libgearman-1.0/ grep -v cinttypes libgearman-1.0/gearman.h > ma mv -v ma libgearman-1.0/gearman.h 这些修改分别对应,编译报警级别的修正,const到non-const转换的修下, gcc低版本(gcc-4.1)无tr1/cinttypes的修正。 4、对php-gearman扩展包的修改,以linux sed命令方式做自动修改。 sed 's/gearman_worker_error(obj->job->worker)/gearman_strerror(obj->ret)/g' php_gearman.c > ma mv -v ma php_gearman.c sed 's/gearman_worker_error(jobj->job->worker)/gearman_strerror(jobj->ret)/g' php_gearman.c > ma mv -v ma php_gearman.c sed 's/&gearman_module_entry/&gearman_module_entry\n\n\nenum{GEARMAN_MAGIC_TEXT,GEARMAN_MAGIC_REQUEST,GEARMAN_MAGIC_RESPONSE};/g' ph p_gearman.h > ma mv -v ma php_gearman.h 修改分另针对以下不兼容问题, a)由于结构隐藏问题,不能再通过obj->obj->worker取到gearman_worker_st指针。 b)有几个常量不在对客户端库开放,暂时手工加入修正这个问题。 实际上完全可以去掉,没有使用。 5、希望gearmand自身越来越完善。 |
原文: http://qtchina.tk/?q=node/684 |
Powered by zexport
|