Yes, the glue packages where built and installed prior to compiling Heartbeat. The main problem as stated before, under RHEL6.2 (the base OS where I started) compiled fine. I upgraded the OS to RHEL6.3 and wanted all of the executables to match the runtime libraries and poof, cannot compile. I also force the definition of HA_LIBHBDIR as well as a few other variables, but it then had problems with other variables further down the list. The issue appears to be some sort of scoping issue with the compiler. I just thought that someone may have a simple solution to this (like a compiler argument)
Thanks James Date: Tue, 18 Sep 2012 16:39:57 +0200 From: Dejan Muhamedagic <[email protected]> Subject: Re: [Linux-HA] Problem with compiling Heartbeat 3.0.5 under RHEL6.3 To: General Linux-HA mailing list <[email protected]> Message-ID: <20120918143956.GC3672@squib> Content-Type: text/plain; charset=iso-8859-1 Hi, On Fri, Sep 14, 2012 at 01:32:14PM +0000, Prater, James K. wrote: > We seem to be having a problem recompiling this package under RHEL6.3, it > compiled fine under RHEL6.2. Issue appears some sort of variable scoping > problems with items that are defined in *.h files only to become undefined. > I had force a couple of variable to be fixed to get around this but it would > crop up further down the compile chain. Has anyone else seen this issue. HA_LIBHBDIR is defined in glue. Do you have that package installed (the development version)? Not sure how it's named in rhel, cluster-glue? Thanks, Dejan > Thanks > > James > > > > James Prater > Sr. Linux Admin > > > -aliasing -Werror -ggdb3 -funsigned-char -MT weight.lo -MD -MP -MF > .deps/weight.Tpo -c -o weight.lo weight.c > libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. > -I../../../include -I../../../include -I../../../include > -I../../../linux-ha -I../../../linux-ha -I../../../libltdl > -I../../../libltdl -I../../../lib/upmls -I../../../lib/upmls > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -g -O2 > -I/usr/include/heartbeat -Wall -Wmissing-prototypes > -Wmissing-declarations -Wstrict-prototypes > -Wdeclaration-after-statement -Wpointer-arith -Wwrite-strings > -Wcast-qual -Wcast-align -Wbad-function-cast -Winline > -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggdb3 > -funsigned-char -g -O2 -I/usr/include/heartbeat -Wall > -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes > -Wdeclaration-after-statement -Wpointer-arith -Wwrite-strings > -Wcast-qual -Wcast-align -Wbad-function-cast -Winline > -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggd b3 -funsigned-char -MT weight.lo -MD -MP -MF .deps/weight.Tpo -c weight.c -fPIC -DPIC -o .libs/weight.o > libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. > -I../../../include -I../../../include -I../../../include > -I../../../linux-ha -I../../../linux-ha -I../../../libltdl > -I../../../libltdl -I../../../lib/upmls -I../../../lib/upmls > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -g -O2 > -I/usr/include/heartbeat -Wall -Wmissing-prototypes > -Wmissing-declarations -Wstrict-prototypes > -Wdeclaration-after-statement -Wpointer-arith -Wwrite-strings > -Wcast-qual -Wcast-align -Wbad-function-cast -Winline > -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggdb3 > -funsigned-char -g -O2 -I/usr/include/heartbeat -Wall > -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes > -Wdeclaration-after-statement -Wpointer-arith -Wwrite-strings > -Wcast-qual -Wcast-align -Wbad-function-cast -Winline > -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggd b3 -funsigned-char -MT weight.lo -MD -MP -MF .deps/weight.Tpo -c weight.c -o weight.o >/dev/null 2>&1 > mv -f .deps/weight.Tpo .deps/weight.Plo > /bin/sh ../../../libtool --tag=CC --tag=CC --mode=link gcc -std=gnu99 -g > -O2 -I/usr/include/heartbeat -Wall -Wmissing-prototypes > -Wmissing-declarations -Wstrict-prototypes -Wdeclaration-after-statement > -Wpointer-arith -Wwrite-strings -Wcast-qual -Wcast-align -Wbad-function-cast > -Winline -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggdb3 > -funsigned-char -g -O2 -I/usr/include/heartbeat -Wall -Wmissing-prototypes > -Wmissing-declarations -Wstrict-prototypes -Wdeclaration-after-statement > -Wpointer-arith -Wwrite-strings -Wcast-qual -Wcast-align -Wbad-function-cast > -Winline -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggdb3 > -funsigned-char -export-dynamic -module -avoid-version -lz -o weight.la > -rpath /usr/lib64/heartbeat/plugins/quorum weight.lo > ../../../replace/libreplace.la -levs -lbz2 -lz -lc -luuid -lrt -ldl -lltdl > libtool: link: gcc -std=gnu99 -shared .libs/weight.o -Wl,--whole-archive > ../../../replace/.libs/libreplace.a -Wl,--no-whole-archive -levs -lbz2 -lz > -lc -luuid -lrt -ldl -lltdl -Wl,-soname -Wl,weight.so -o .libs/weight.so > libtool: link: (cd .libs/weight.lax/libreplace.a && ar x > "/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib/plugins/quorum/../.. > /../replace/.libs/libreplace.a") > libtool: link: ar cru .libs/weight.a weight.o > .libs/weight.lax/libreplace.a/strlcpy.o > .libs/weight.lax/libreplace.a/strlcat.o > .libs/weight.lax/libreplace.a/NoSuchFunctionName.o > libtool: link: ranlib .libs/weight.a > libtool: link: rm -fr .libs/weight.lax > libtool: link: ( cd ".libs" && rm -f "weight.la" && ln -s > "../weight.la" "weight.la" ) > gmake[4]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib/plugins/quorum' > gmake[3]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib/plugins/quorum' > Making all in tiebreaker > gmake[3]: Entering directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib/plugins/tiebreaker' > gmake[4]: Entering directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib/plugins/tiebreaker' > /bin/sh ../../../libtool --tag=CC --tag=CC --mode=compile gcc -std=gnu99 > -DHAVE_CONFIG_H -I. -I../../../include -I../../../include -I../../../include > -I../../../linux-ha -I../../../linux-ha -I../../../libltdl -I../../../libltdl > -I../../../lib/upmls -I../../../lib/upmls -I/usr/include/glib-2.0 > -I/usr/lib64/glib-2.0/include -g -O2 -I/usr/include/heartbeat -Wall > -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes > -Wdeclaration-after-statement -Wpointer-arith -Wwrite-strings -Wcast-qual > -Wcast-align -Wbad-function-cast -Winline -Wmissing-format-attribute > -Wformat=2 -Wformat-security -Wformat-nonliteral -Wno-long-long > -Wno-strict-aliasing -Werror -ggdb3 -funsigned-char -g -O2 > -I/usr/include/heartbeat -Wall -Wmissing-prototypes -Wmissing-declarations > -Wstrict-prototypes -Wdeclaration-after-statement -Wpointer-arith > -Wwrite-strings -Wcast-qual -Wcast-align -Wbad-function-cast -Winline > -Wmissing-format-attribute -Wformat=2 -Wformat-security -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggdb3 -funsigned-char -MT twonodes.lo -MD -MP -MF .deps/twonodes.Tpo -c -o twonodes.lo twonodes.c > libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. > -I../../../include -I../../../include -I../../../include > -I../../../linux-ha -I../../../linux-ha -I../../../libltdl > -I../../../libltdl -I../../../lib/upmls -I../../../lib/upmls > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -g -O2 > -I/usr/include/heartbeat -Wall -Wmissing-prototypes > -Wmissing-declarations -Wstrict-prototypes > -Wdeclaration-after-statement -Wpointer-arith -Wwrite-strings > -Wcast-qual -Wcast-align -Wbad-function-cast -Winline > -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggdb3 > -funsigned-char -g -O2 -I/usr/include/heartbeat -Wall > -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes > -Wdeclaration-after-statement -Wpointer-arith -Wwrite-strings > -Wcast-qual -Wcast-align -Wbad-function-cast -Winline > -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggd b3 -funsigned-char -MT twonodes.lo -MD -MP -MF .deps/twonodes.Tpo -c twonodes.c -fPIC -DPIC -o .libs/twonodes.o > libtool: compile: gcc -std=gnu99 -DHAVE_CONFIG_H -I. > -I../../../include -I../../../include -I../../../include > -I../../../linux-ha -I../../../linux-ha -I../../../libltdl > -I../../../libltdl -I../../../lib/upmls -I../../../lib/upmls > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -g -O2 > -I/usr/include/heartbeat -Wall -Wmissing-prototypes > -Wmissing-declarations -Wstrict-prototypes > -Wdeclaration-after-statement -Wpointer-arith -Wwrite-strings > -Wcast-qual -Wcast-align -Wbad-function-cast -Winline > -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggdb3 > -funsigned-char -g -O2 -I/usr/include/heartbeat -Wall > -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes > -Wdeclaration-after-statement -Wpointer-arith -Wwrite-strings > -Wcast-qual -Wcast-align -Wbad-function-cast -Winline > -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggd b3 -funsigned-char -MT twonodes.lo -MD -MP -MF .deps/twonodes.Tpo -c twonodes.c -o twonodes.o >/dev/null 2>&1 > mv -f .deps/twonodes.Tpo .deps/twonodes.Plo > /bin/sh ../../../libtool --tag=CC --tag=CC --mode=link gcc -std=gnu99 -g > -O2 -I/usr/include/heartbeat -Wall -Wmissing-prototypes > -Wmissing-declarations -Wstrict-prototypes -Wdeclaration-after-statement > -Wpointer-arith -Wwrite-strings -Wcast-qual -Wcast-align -Wbad-function-cast > -Winline -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggdb3 > -funsigned-char -g -O2 -I/usr/include/heartbeat -Wall -Wmissing-prototypes > -Wmissing-declarations -Wstrict-prototypes -Wdeclaration-after-statement > -Wpointer-arith -Wwrite-strings -Wcast-qual -Wcast-align -Wbad-function-cast > -Winline -Wmissing-format-attribute -Wformat=2 -Wformat-security > -Wformat-nonliteral -Wno-long-long -Wno-strict-aliasing -Werror -ggdb3 > -funsigned-char -export-dynamic -module -avoid-version -lz -o twonodes.la > -rpath /usr/lib64/heartbeat/plugins/tiebreaker twonodes.lo > ../../../replace/libreplace.la -levs -lbz2 -lz -lc -luuid -lrt -ldl - lltdl > libtool: link: gcc -std=gnu99 -shared .libs/twonodes.o -Wl,--whole-archive > ../../../replace/.libs/libreplace.a -Wl,--no-whole-archive -levs -lbz2 -lz > -lc -luuid -lrt -ldl -lltdl -Wl,-soname -Wl,twonodes.so -o > .libs/twonodes.so > libtool: link: (cd .libs/twonodes.lax/libreplace.a && ar x > "/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib/plugins/tiebreaker/. > ./../../replace/.libs/libreplace.a") > libtool: link: ar cru .libs/twonodes.a twonodes.o > .libs/twonodes.lax/libreplace.a/strlcpy.o > .libs/twonodes.lax/libreplace.a/strlcat.o > .libs/twonodes.lax/libreplace.a/NoSuchFunctionName.o > libtool: link: ranlib .libs/twonodes.a > libtool: link: rm -fr .libs/twonodes.lax > libtool: link: ( cd ".libs" && rm -f "twonodes.la" && ln -s > "../twonodes.la" "twonodes.la" ) > gmake[4]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib/plugins/tiebreaker' > gmake[3]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib/plugins/tiebreaker' > gmake[3]: Entering directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib/plugins' > gmake[3]: Nothing to be done for `all-am'. > gmake[3]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib/plugins' > gmake[2]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib/plugins' > gmake[2]: Entering directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib' > gmake[2]: Nothing to be done for `all-am'. > gmake[2]: Leaving directory `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib' > gmake[1]: Leaving directory `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/lib' > Making all in heartbeat > gmake[1]: Entering directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat' > Making all in init.d > gmake[2]: Entering directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat/init.d' > gmake[2]: Nothing to be done for `all'. > gmake[2]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat/init.d' > Making all in lib > gmake[2]: Entering directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat/lib' > gmake[2]: Nothing to be done for `all'. > gmake[2]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat/lib' > Making all in logrotate.d > gmake[2]: Entering directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat/logrotate.d' > gmake[2]: Nothing to be done for `all'. > gmake[2]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat/logrotate.d' > Making all in rc.d > gmake[2]: Entering directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat/rc.d' > gmake[2]: Nothing to be done for `all'. > gmake[2]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat/rc.d' > gmake[2]: Entering directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat' > gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../include -I../include -I../include > -I../linux-ha -I../linux-ha -I../libltdl -I../libltdl > -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -g -O2 > -I/usr/include/heartbeat -Wall -Wmissing-prototypes -Wmissing-declarations > -Wstrict-prototypes -Wdeclaration-after-statement -Wpointer-arith > -Wwrite-strings -Wcast-qual -Wcast-align -Wbad-function-cast -Winline > -Wmissing-format-attribute -Wformat=2 -Wformat-security -Wformat-nonliteral > -Wno-long-long -Wno-strict-aliasing -Werror -ggdb3 -funsigned-char -g -O2 > -I/usr/include/heartbeat -Wall -Wmissing-prototypes -Wmissing-declarations > -Wstrict-prototypes -Wdeclaration-after-statement -Wpointer-arith > -Wwrite-strings -Wcast-qual -Wcast-align -Wbad-function-cast -Winline > -Wmissing-format-attribute -Wformat=2 -Wformat-security -Wformat-nonliteral > -Wno-long-long -Wno-strict-aliasing -Werror -ggdb3 -funsigned-char -MT > heartbeat-heartbeat.o -MD -MP -MF .deps/heartbeat-heartbeat.Tpo -c -o hea rtbeat-heartbeat.o `test -f 'heartbeat.c' || echo './'`heartbeat.c > heartbeat.c: In function ?restart_heartbeat?: > heartbeat.c:4216: error: ?HA_LIBHBDIR? undeclared (first use in this > function) > heartbeat.c:4216: error: (Each undeclared identifier is reported only > once > heartbeat.c:4216: error: for each function it appears in.) > heartbeat.c:4216: error: expected ?)? before string constant > heartbeat.c:4219: error: too few arguments to function ?execl? > heartbeat.c:4221: error: expected ?)? before string constant > heartbeat.c:4222: error: too few arguments to function ?execl? > heartbeat.c:4229: error: expected ?)? before string constant > heartbeat.c:4229: error: too few arguments to function ?execl? > heartbeat.c:4231: error: expected ?)? before ?HA_LIBHBDIR? > gmake[2]: *** [heartbeat-heartbeat.o] Error 1 > gmake[2]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat' > gmake[1]: *** [all-recursive] Error 1 > gmake[1]: Leaving directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat' > gmake: *** [all-recursive] Error 1 > [root@vmdiskserver2 Heartbeat-3-0-7e3a82377fa8]# gmake[2]: Entering directory > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat/rc.d' > > gmake[2]: Nothing to be done for `all'. > > gmake[2]: Leaving directory > > `/vmdisk/HA_Server/Heartbeat-3-0-7e3a82377fa8/heartbeat/rc.d' > _______________________________________________ > Linux-HA mailing list > [email protected] > http://lists.linux-ha.org/mailman/listinfo/linux-ha > See also: http://linux-ha.org/ReportingProblems _______________________________________________ Linux-HA mailing list [email protected] http://lists.linux-ha.org/mailman/listinfo/linux-ha See also: http://linux-ha.org/ReportingProblems
