Le mercredi 06 septembre 2017 à 12:39 +0200, Michael Scherer a écrit : > Hi, > > so I have been trying to make the internal freebsd builder usable, > sinc > eit was freshly installed and not building anything. > > Over the course of the day, I found a few missing deps, found a ton > of > warnings (I started to fix the easy one, not sure what to do for the > more complicated one around gf_log formating), but yesterday, I > stumbled on a more puzzling issue: > > CCLD glusterfsd > ../../contrib/argp-standalone/libargp.a(argp-help.o): In function > `_help': > /tmp/glusterfs/contrib/argp-standalone/argp-help.c:1608: undefined > reference to `argp_fmtstream_set_wmargin' > /tmp/glusterfs/contrib/argp-standalone/argp-help.c:1622: undefined > reference to `argp_fmtstream_set_lmargin' > > > I also see message like this: > libtool: warning: relinking 'libgfapi.la' > *** Warning: Linking the shared library libgfapi.la against the > *** static library ../../contrib/argp-standalone/libargp.a is not > portable! > > > After looking at the old builder, I found a few differences: > - old one is FreeBSD 10.1, new one is 10.3 > - old one is using gcc 4.8, new one was on clang. > > So I did install gcc, turn out that this was the version 5 by default > on FreeBSD and it still do not work with it. > > Then I forced gcc4.8 and now it build fine. > Even better, once I forced the version, it also build (but I suspect > that's just some bad cleanup on my side, more tests are needed) > > Any reason on why this would fail on gcc 5, and not 4.8, and what we > should do for that ? > > I also found that what fail is to build only in Jenkins, most likely > due to the setup where we build with a out of source tree directory > for > binary. It work fine if doing ./configure ; make ; make install So digging more, I suspect the problem is somewhere with our bundled version of argp-standalone in contribs/, who do not include some symbol when compiling with build.sh $ objdump -t argp-fmtstream.o |grep .text 0000000000000fb0 l F .text 0000000000000076 __getCurrentRuneLocale 0000000000000b00 l F .text 0000000000000035 __sbistype 0000000000000f40 l F .text 000000000000006b __sbmaskrune 0000000000000a70 l F .text 0000000000000090 __sputc 0000000000000000 l d .text 0000000000000000 .text 0000000000000b40 g F .text 00000000000001d3 _argp_fmtstream_ensure 0000000000000190 g F .text 00000000000008de _argp_fmtstream_update 0000000000000100 g F .text 0000000000000082 argp_fmtstream_free 0000000000000d20 g F .text 0000000000000216 argp_fmtstream_printf 0000000000000000 g F .text 00000000000000fa argp_make_fmtstream So I started to dig, and dig so deep that I am basically near New Zealand. And so far, I found that build.sh redefinition of CFLAGS is likely the problem, as it likely erase something. I am gonna dig in details tomorrow, posting my research so far if someone is interested into fixing that in the night :) -- Michael Scherer Sysadmin, Community Infrastructure and Platform, OSAS
Attachment:
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Gluster-devel mailing list Gluster-devel@xxxxxxxxxxx http://lists.gluster.org/mailman/listinfo/gluster-devel