heartbeat版本:
Heartbeat-3-0-7e3a82377fa8.tar.bz2
编译安装报错:
configure: error: Core development headers were not found
解决办法:安装glue
到官网下载glue:
tar -jxvf Reusable-Cluster-Components-glue--glue-1.0.9.tar.bz2
cd Reusable-Cluster-Components-glue--glue-1.0.9
autogen.sh && ./configure && make && make install
tar -jxvf Heartbeat-3-0-7e3a82377fa8.tar.bz2
cd Heartbeat-3-0-7e3a82377fa8
./bootstrap && ./ConfigureMe ./configure && make && make install && echo "ok"
如果要指定安装目录的话采取非默认的可以用下边的方法:
export PREFIX=/usr/local/heartbeat
export LCRSODIR=$PREFIX/libexec/lcrso
export CLUSTER_USER=hacluster
export CLUSTER_GROUP=haclient
cd Reusable-Cluster-Components-glue--glue-1.0.9
./autogen.sh && ./configure --prefix=$PREFIX && make && make install && echo "ok,come on"
cd ../Heartbeat-3-0-7e3a82377fa8
./bootstrap && ./configure --prefix=$PREFIX --with-lcrso-dir=/usr/libexec/lcrso(lcrso由openais提供,lcrso在哪里可以用find找一下一般在/usr/libexec/下)
&& make && make instll && echo "OK"
(Heartbeat,Reusable-Cluster最好装在一个目录,如果heartbeat为3.0.4那么编译则有所不同:
如果是glue插件的安装则用下边指令安装:
./configure --prefix=/usr/local/heartbeat CFLAGES=-I/usr/local/heartbeat/include LDFLAGS=-L/usr/local/heartbeat/lib
heartbeat安装则要用下边的指令:
./configure --prefix=/usr/local/heartbeat CFLAGES=-I/usr/local/heartbeat/include LDFLAGS=-L/usr/local/heartbeat/lib,不然上边core 文件丢失的问题仍然不能解决)
遇到这个出错:
In file included from ../include/lha_internal.h:41,
from strlcpy.c:1:
/prog/heartbeat/include/heartbeat/glue_config.h:50:1: error: "HA_SYSCONFDIR" redefined
In file included from ../include/lha_internal.h:38,
from strlcpy.c:1:
../include/config.h:401:1: error: this is the location of the previous definition
In file included from ../include/lha_internal.h:41,
from strlcpy.c:1:
/prog/heartbeat/include/heartbeat/glue_config.h:105:1: error: "HA_HBCONF_DIR" redefined
In file included from ../include/lha_internal.h:38,
from strlcpy.c:1:
../include/config.h:386:1: error: this is the location of the previous definition
gmake[1]: *** [strlcpy.lo] Error 1
gmake[1]: Leaving directory `/prog/heartbeat-3-0-7/replace'
make: *** [all-recursive] Error 1
解决办法:
到/proc/heartbeat/include/heartbeak/glue_config.h文件中把第50行,第105行的内容删除即可,注意对文件修改前把文件备份下
阅读(8829) | 评论(0) | 转发(0) |