我一直试图让Gearman在CentOS 5.8上编译整个下午。
search有说要通过yum安装以下内容:
yum -y install --enablerepo=remi boost141-devel libgearman-devel e2fsprogs-devel e2fsprogs gcc44 gcc-c++
为了让Boost头文件正常工作,我这样做了:
cp -f / usr / lib / boost141 / * / usr / lib / cp -f / usr / lib64 / boost141 / * / usr / lib64 / rm -f / usr / include / boost ln -s / usr / include / boost141 / boost / usr / include / boost
随着所有的依赖安装和path设置,然后下载和编译gearmand-1.1.2就好了。
wget -O /tmp/gearmand-1.1.2.tar.gz https://launchpad.net/gearmand/1.2/1.1.2/+download/gearmand-1.1.2.tar.gz cd / tmp && tar zxvf gearmand-1.1.2.tar.gz ./configure && make -j8 && make install
这工作正常。 所以现在我需要安装PHP的Gearman库。 我试图通过PECL直接下载源码,都导致同样的错误:
检查是否启用gearman支持...是的,共享 未find configuration:错误:请安装libgearman
我不明白的是我安装了libgearman-devel软件包,它也安装了核心libgearman 。 安装程序安装libgearman-devel-0.14-3.el5.x86_64 , libgearman-devel-0.14-3.el5.i386 , libgearman-0.14-3.el5.x86_64和libgearman-0.14-3.el5.i386 。
包装版本是否可能低于要求? 我仍然在这个问题上,但是我想我会抛出这个问题,看看有没有人有解决scheme,而我继续研究修复。
谢谢!
这应该做的伎俩:
export GEARMAN_LIB_DIR=/usr/include/libgearman export GEARMAN_INC_DIR=/usr/include/libgearman
这应该工作,如果没有,你将不得不做一些小config.m4编辑。
有关这方面的一些其他有用的注意事项可以在这里find: http : //gearman.info/build/centos5-8.html
并根据上面的链接和随机附近的谷歌search已经为我工作,没有搞乱lib /包括文件夹:
yum install boost141 boost141-devel gcc44 gcc44-c++ uuid-devel export CC="gcc44" export CFLAGS="-std=gnu99" export CXX="gcc44-c++" export CPPFLAGS="-I/usr/include/boost141" export LDFLAGS="-L/usr/lib64/boost141" CC=gcc44 CXX=g++44 ./configure make make install
更新: Epel最近更新到gearmand / libgearman 1.1.8这是最近比较,他们以前的版本(0.14?)。 所以应该没有必要自己编译它(当然php php的扩展除外)。