[Linux-HA] Problems building 2.0.2 on FreeBSD 5.4

Alan Robertson alanr at unix.sh
Tue Oct 18 13:38:31 MDT 2005


emfau at t-online.de wrote:
> Hi,
> 
> I'm trying to build from a stock tarball (heartbeat-2.0.2.tar.gz) on a 
> current FreeBSD 5.4 system. While testing I want to install everthing 
> below /var/opt/ha so I call configure like this
> 
>   $ ./configure --prefix=/var/opt/ha --sysconfdir=/var/opt/ha/etc
>     --localstatedir=/var/opt/ha/var --with-uuid=no
>     --with-initdir=/var/opt/ha/init/rc.d
> 
> No problems here, the summary looks fine to me
> 
>  heartbeat configuration:
>   Version              = "2.0.2"
>   Executables          = "/var/opt/ha/sbin"
>   Man pages            = "/var/opt/ha/man"
>   Libraries            = "/var/opt/ha/lib"
>   Header files         = "/var/opt/ha/include"
>   Data files           = "/var/opt/ha/share"
>   State information    = "/var/opt/ha/var"
>   System configuration = "/var/opt/ha/etc"
>   Init (rc) scripts    = "/var/opt/ha/init/rc.d"
>   Use system LTDL      = "yes"
>   HA group name        = "haclient"
>   HA group id          = "65"
>   HA user name         = "hacluster"
>   HA user user id      = "17"
>   Build snmp subagent  = "no"
>   SNMP libraries       = ""
>   ucd_snmp_devel name  = ""
>   Build New CRM        = "yes"
>   Build New LRM        = "yes"
>   CC_WARNINGS          = " -Wall -Wmissing-prototypes 
> -Wmissing-declarations
>   -Wstrict-prototypes -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 "  Mangled CFLAGS       = "-g -O2  -Wall -Wmissing-prototypes
>   -Wmissing-declarations -Wstrict-prototypes -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"
> 
> A '$ make' now results in
> 
>   /bin/sh ../../libtool  --tag=CC --mode=link gcc -I../../include
>  -I../../include -I../../libltdl -I../../libltdl -I../../linux-ha
>  -I../../linux-ha -I../.. -I../.. 
> -DVAR_LIB_D='"/var/opt/ha/var/lib/heartbeat"'
>  -g -O2 -Wall -Wmissing-prototypes -Wmissing-declarations 
> -Wstrict-prototypes
>  -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 -o libstonithd.la -rpath /var/opt/ha/lib
>  ../../lib/clplumbing/libplumb.la ../../lib/hbclient/libhbclient.la
>  -L/usr/local/lib -lglib-2.0 -liconv -luuid stonithd_lib.lo
>  stonithd_msg.lo -lbz2 -lz -lintl -lc -L/usr/local/lib -lltdl -lutil
> 
>  gcc -shared  .libs/stonithd_lib.o .libs/stonithd_msg.o
>   -Wl,--rpath -Wl,/var/tmp/work/heartbeat-2.0.2/lib/clplumbing/.libs
>   -Wl,--rpath -Wl,/var/tmp/work/heartbeat-2.0.2/lib/hbclient/.libs
>   -Wl,--rpath -Wl,/usr/local/lib -Wl,--rpath -Wl,/var/opt/ha/lib
>   -Wl,--rpath -Wl,/usr/local/lib 
> -L/var/tmp/work/heartbeat-2.0.2/lib/pils/.libs
>   -L/usr/local/lib ../../lib/clplumbing/.libs/libplumb.so
>   ../../lib/hbclient/.libs/libhbclient.so -lglib-2.0 -liconv -luuid -lbz2
>   -lz -lintl /usr/local/lib/libltdl.so -lutil  -Wl,-soname
>   -Wl,libstonithd.so.0 -o .libs/libstonithd.so.0
> 
>   /usr/bin/ld: cannot find -luuid
>   *** Error code 1
> 
>   Stop in /var/tmp/work/heartbeat-2.0.2/lib/fencing.
>   *** Error code 1
> 
>   Stop in /var/tmp/work/heartbeat-2.0.2/lib.
>   *** Error code 1
> 
>   Stop in /var/tmp/work/heartbeat-2.0.2.
> 
> As I configured '--with-uuid=no' this probably shouldn't happen?
> So next step was to remove -luuid from lib/fencing/Makefile.
> Another 'make' gave me
> 
>   /usr/bin/ld: cannot find -luuid
>   *** Error code 1
> 
>   Stop in /var/tmp/work/heartbeat-2.0.2/lib/lrm
>   *** Error code 1
> 
>   Stop in /var/tmp/work/heartbeat-2.0.2/lib.
>   *** Error code 1
> 
>   Stop in /var/tmp/work/heartbeat-2.0.2.
> 
> Same thing, so I removed libuuid from lib/lrm/Makefile as well and 
> restarted 'make'. Now it runs until
> 
>   Making all in ldirectord
>   Making all in logrotate.d
>   Making all in init.d
>   pod2man --section=8  > ldirectord.8
> 
> where it hangs. I can see the the process hanging around via 'ps'
> 
> 51629  p1  I+     0:00.01 /bin/sh -ec pod2man --section=8  > ldirectord.8
> 
> but 'top' show the machine as completely idle.
> So I deceided to stop it and restart from the beginning after doing a
> 'make distclean'. Unfortunately this also stops with an error
> 
>   Making distclean in port
>   test -z "" || rm -f
>   rm -rf .libs _libs
>   -rf tmpinst
>   -rf:No such file or directory
>   *** Error code 1
> 
>   Stop in /var/tmp/work/heartbeat-2.0.2/port.
>   *** Error code 1
> 
>   Stop in /var/tmp/work/heartbeat-2.0.2.
> 
> Am I missing any important step or is there more information I need to 
> provide?
> Did anybody successfully build 2.0.2 on FreeBSD?

Your mistake is thinking the uuid libraries are optional.  Setting them 
to no doesn't do anything useful.  Get one or the other versions of uuid 
libraries.  What happened after that I can't say.

But, get one or the other of the UUID libraries, and try a clean build.


-- 
     Alan Robertson <alanr at unix.sh>

"Openness is the foundation and preservative of friendship...  Let me 
claim from you at all times your undisguised opinions." - William 
Wilberforce



More information about the Linux-HA mailing list