[ClusterLabs] help compiling pacemaker 1.1 on Amazon Linux
Jim Rippon
jim at rippon.me.uk
Fri May 6 13:52:37 UTC 2016
Thank you guys,
I've taken your advice onboard and checked out 1.1.15-rc1 including the
patches Lars mentions as Jan suggested - I see another warning with
fatal warnings enabled:
gmake[2]: Entering directory `/home/jrippon/pacemaker/lib/cluster'
CC election.lo
CC cluster.lo
CC membership.lo
CC cpg.lo
CC legacy.lo
legacy.c:55:13: error: 'valid_cman_name' defined but not used
[-Werror=unused-function]
static bool valid_cman_name(const char *name, uint32_t nodeid)
^
cc1: all warnings being treated as errors
gmake[2]: *** [legacy.lo] Error 1
gmake[2]: Leaving directory `/home/jrippon/pacemaker/lib/cluster'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/home/jrippon/pacemaker/lib'
make: *** [core] Error 1
This is, of course, only a warning with fatal warnings disabled as Jan
suggested - I can build successfully with that function commented
without other errors.
I'm happy to trial 1.1.15-rc1 built with fatal warnings disabled for now
- my C foo isn't good enough to debug the problem further, but if I can
be of any help getting that warning fixed for rc2 I'd be happy to assist
:)
Thanks,
Jim
On 2016-05-06 14:39, Jan Pokorný wrote:
> On 06/05/16 13:31 +0200, Lars Ellenberg wrote:
>> On Fri, May 06, 2016 at 11:51:25AM +0100, Jim Rippon wrote:
>>> I'm new to the list so apologies if I'm way off base, but I wonder
>>> if someone can help me please?
>>>
>>> I'm looking to build private RPMs for pacemaker and any dependencies
>>> for Amazon Linux because I have as yet been unable to get the CentOS
>>> binaries to install successfully.
>>>
>>> I've got libqb and libqb-devel RPMs built successfully (also not
>>> available in amazon linux repos) and installed on my build instance,
>>> but I am getting errors when making pacemaker from tag
>>> Pacemaker-1.1.14
>>>
>>> I am doing the following:
>>>
>>> git checkout --force Pacemaker-1.1.14
>>> git clean -fdx
>>> ./autogen.sh
>>> ./configure # with options suggested by autogen.sh
>>> make
>>>
>>> I then receive the following errors from lib/common and the make
>>> fails:
>>>
>>> In file included from ../../include/crm_internal.h:33:0,
>>> from ipc.c:19:
>>> ipc.c: In function 'crm_ipcs_flush_events':
>>> ../../include/crm/common/logging.h:140:23: error: format '%d'
>>> expects argument of type 'int', but argument 10 has type 'ssize_t'
>>> [-Werror=format=]
>>
>>
>> That's "just" a format error about ssize_t != int.
>> See also
>> https://github.com/ClusterLabs/pacemaker/commit/fc87717
>> where I already fixed this (and other) format errors.
>>
>> Of course you could also drop the -Werror,
>> and hope that most of the time, for your platform,
>> gcc will do something useful still.
>
> This would be done with passing "--disable-fatal-warnings" to
> ./configure invocation.
>
> Note that such build failures will also go away once you try
> with libqb <= v1.0rc1, i.e., anything that doesn't include
> https://github.com/ClusterLabs/libqb/pull/175 (736e2c8).
>
> But both will just fool yourself into thinking that Pacemaker
> always passes logging parameters per the format strings (and
> hence segfaults due to such mishandlings are not possible),
> which is not the case until the changeset Lars referenced.
>
> So actually using recently released Pacemaker-1.1.15-rc1
> (which includes that) might be a better idea.
>
> Hope this helps.
>
> --
> Jan (Poki)
>
> _______________________________________________
> Users mailing list: Users at clusterlabs.org
> http://clusterlabs.org/mailman/listinfo/users
>
> Project Home: http://www.clusterlabs.org
> Getting started:
> http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
> Bugs: http://bugs.clusterlabs.org
More information about the Users
mailing list