[Pacemaker] Trouble building Pacemaker from source on CentOS 5.10

Andrew Beekhof andrew at beekhof.net
Wed Dec 18 23:05:21 EST 2013


On 14 Dec 2013, at 7:51 am, Stephane Robin <SRobin at kivasystems.com> wrote:

> Hi, 
> 
> I'm trying to build Pacemaker-1.1.10 (from git), with corosync 2.3.2 and libqb 0.16.0 on a CentOS 5.10 64b system.
> I have latest auto tools (automake 1.14, autoconf 2.69, lib tool 2.4, pkg-config 0.27.1)
> 
> For Pacemaker, I'm doing:
> ./autogen.sh
> ./configure --with-corosync --with-cs-quorum  --without-snmp --without-nagios --enable-upstart=no
> 
> pacemaker configuration:
>   Version                  = 1.1.10 (Build: 368c726)
>   Features                 = libqb-logging libqb-ipc  corosync-native
> 
>   Prefix                   = /usr
>   Executables              = /usr/sbin
>   Man pages                = /usr/share/man
>   Libraries                = /usr/lib64
>   Header files             = /usr/include
>   Arch-independent files   = /usr/share
>   State information        = /var
>   System configuration     = /etc
>   Corosync Plugins         = /usr/lib64
> 
>   Use system LTDL          = yes
> 
>   HA group name            = haclient
>   HA user name             = hacluster
> 
>   CFLAGS                   = -g -O2 -I/usr/include -I/usr/include/heartbeat      -ggdb  -fgnu89-inline -fstack-protector-all -Wall -Waggregate-return -Wbad-function-cast -Wcast-align -Wdeclaration-after-statement -Wendif-labels -Wfloat-equal -Wformat=2  -Wformat-security -Wformat-nonliteral -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wno-long-long -Wno-strict-aliasing -Wpointer-arith -Wstrict-prototypes -Wwrite-strings -Werror
>   Libraries                = -lcorosync_common -lqb -lbz2 -lxslt -lxml2 -lc -luuid -lrt -ldl  -L/lib64 -lglib-2.0  -lltdl -L/usr/lib64 -lqb -ldl -lrt -lpthread
>   Stack Libraries          =   -L/usr/lib64 -lqb -ldl -lrt -lpthread  -L/usr/lib64 -lcpg  -L/usr/lib64 -lcfg  -L/usr/lib64 -lcmap  -L/usr/lib64 -lquorum
> 
> 
> But I'm getting this error:
> gmake[2]: Entering directory `/root/Cluster3/pacemaker/lib/common'
>   CC       ipc.lo
> cc1: warnings being treated as errors
> In file included from ../../include/crm_internal.h:26,
>                  from ipc.c:19:
> ../../include/portability.h: In function 'g_strcmp0':
> ../../include/portability.h:165: warning: implicit declaration of function 'strcmp'
> gmake[2]: *** [ipc.lo] Error 1
> gmake[2]: Leaving directory `/root/Cluster3/pacemaker/lib/common'
> 
> 
> If I disable the warning as errors, I can pass this problem (and several similar), but then fail on:
> 
> services_linux.c:33:26: error: sys/signalfd.h: No such file or directory
> services_linux.c: In function 'services_os_action_execute':
> services_linux.c:436: warning: implicit declaration of function 'signalfd'
> services_linux.c:436: warning: nested extern declaration of 'signalfd'
> services_linux.c:468: error: storage size of 'fdsi' isn't known
> services_linux.c:471: error: invalid application of 'sizeof' to incomplete type 'struct signalfd_siginfo'
> services_linux.c:472: error: invalid application of 'sizeof' to incomplete type 'struct signalfd_siginfo'
> services_linux.c:468: warning: unused variable 'fdsi'
> 
> 
> What am I missing here ?
> It there a page somewhere with RHEL-5/CENTOS-5 prerequisites or special instruction to build from sources ?

RHEL5 is too old by the looks of it.
In this case, you could revert https://github.com/beekhof/pacemaker/commit/a81d222e which introduced the use of signalfd.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 841 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <https://lists.clusterlabs.org/pipermail/pacemaker/attachments/20131219/963762d1/attachment-0003.sig>


More information about the Pacemaker mailing list