Date: Thu, 31 Mar 2016 14:32:07 -0700 From: Bryan Drewery <bdrewery@FreeBSD.org> To: Mark Millard <markmi@dsl-only.net>, FreeBSD Current <freebsd-current@freebsd.org>, FreeBSD Toolchain <freebsd-toolchain@freebsd.org>, FreeBSD PowerPC ML <freebsd-ppc@freebsd.org> Subject: Re: svn commit: r297435 - head: still problems for stage 3 when gcc 4.2.1 is avoided (powerpc64 self-hosted build) Message-ID: <56FD9757.6040709@FreeBSD.org> In-Reply-To: <5A0ACA76-6F1D-4975-9E59-2A64BB8EFC77@dsl-only.net> References: <5A0ACA76-6F1D-4975-9E59-2A64BB8EFC77@dsl-only.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 3/31/16 2:23 PM, Mark Millard wrote: > I use the likes of: > >> > # diff -rq /usr/include /usr/local/include | grep "^Files " > to find what to rename for the duration of the system builds. > > An example of what happens without the renames is below but I first note the use of the name dwarf_errmsg in /usr/include vs. in /usr/local/include (shown after the .h file rename but the build was with the normal file name): > Except for legacy, build-tools, bootstrap-tools, and cross-tools, none of /usr/include or /usr/local/include is supposed to be included. In those phases though it is intended that /usr/include is used. Not /usr/local/include though. What package is providing /usr/local/include/libdwarf.h? 'pkg which /usr/local/include/libdwarf.h' I ask so I can install it and recreate the issue and fix it. We likely just need to prioritize /usr/include over /usr/local/include for these phases, which gcc49 may have backwards since it has its prefix set to /usr/local from the ports build. >> > # find /usr/include/ -exec grep dwarf_errmsg {} \; -print >> > #define dwarf_errmsg(error) dwarf_errmsg_(&error) >> > const char *dwarf_errmsg_(Dwarf_Error *); >> > /usr/include/libdwarf.h >> > # find /usr/local/include/ -exec grep dwarf_errmsg {} \; -print >> > char* dwarf_errmsg(Dwarf_Error /*error*/); >> > /usr/local/include/renamed_libdwarf.h >> > # > So dwarf_errmsg is from /usr/local/include and dwarf_errmsg_ is from /usr/include . > > The failure shows references to dwarf_errmsg instead of dwarf_errmsg_ --and dwarf_errmsg being undefined (dwarf_errno has similar issues): > >> > -------------------------------------------------------------- >>>>> > >>> stage 3: cross tools >> > -------------------------------------------------------------- >> > . . . >> > --- ctfconvert.full --- >> > /usr/local/bin/gcc49 -O2 -pipe -I/usr/src/cddl/usr.bin/ctfconvert/../../../sys/cddl/compat/opensolaris -I/usr/src/cddl/usr.bin/ctfconvert/../../../cddl/compat/opensolaris/include -I/usr/src/cddl/usr.b >> > in/ctfconvert/../../../cddl/contrib/opensolaris -I/usr/src/cddl/usr.bin/ctfconvert/../../../sys/cddl/contrib/opensolaris -I/usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/head -I/us >> > r/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/common >> -I/usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/cvt >> -I/usr/src/cddl/usr.bin/ctfconvert/. >> > ./../../sys/cddl/contrib/opensolaris/uts/common -DNEED_SOLARIS_BOOLEAN -g -std=gnu99 -I/usr/obj/xtoolchain/powerpc.powerpc64/usr/src/tmp/legacy/usr/include -static -L/usr/obj/xtoolchain/powerpc.power >> > pc64/usr/src/tmp/legacy/usr/lib -o ctfconvert.full alist.o ctf.o ctfconvert.o dwarf.o fixup_tdescs.o hash.o iidesc.o input.o list.o memory.o merge.o output.o st_parse.o stabs.o stack.o strtab.o symbol >> > .o tdata.o traverse.o util.o -ldwarf -lelf -lelf -lz -lpthread -legacy >> > dwarf.o: In function `die_off': >> > /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:270: undefined reference to `dwarf_errmsg' >> > dwarf.o: In function `die_sibling': >> > /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:288: undefined reference to `dwarf_errmsg' >> > dwarf.o: In function `die_child': >> > /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:305: undefined reference to `dwarf_errmsg' >> > dwarf.o: In function `die_tag': >> > /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:319: undefined reference to `dwarf_errmsg' >> > dwarf.o: In function `die_unsigned': >> > /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:370: undefined reference to `dwarf_errmsg' >> > dwarf.o:/usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:418: more undefined references to `dwarf_errmsg' follow >> > dwarf.o: In function `dw_read': >> > /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:1963: undefined reference to `dwarf_errno' >> > /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:1971: undefined reference to `dwarf_errmsg' >> > /usr/src/cddl/usr.bin/ctfconvert/../../../cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:1977: undefined reference to `dwarf_errmsg' >> > collect2: error: ld returned 1 exit status >> > *** [ctfconvert.full] Error code 1 > -- Regards, Bryan Drewery
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?56FD9757.6040709>