Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 27 Feb 2015 15:51:49 +0400
From:      Arseny Nasokin <eirnym@gmail.com>
To:        Garrett Cooper <yaneurabeya@gmail.com>
Cc:        freebsd-current <freebsd-current@freebsd.org>
Subject:   Re: Current build world failed: bsdxml is missing?
Message-ID:  <CAO8GK0rwunK9CFTjyekc8SDFn-iDnAL3sm5bAbCytcCder2smw@mail.gmail.com>
In-Reply-To: <CAO8GK0o1P-vsqO9%2BPVzT0YEZZ7awsE81H4DWcYwJVLiGOmyNLA@mail.gmail.com>
References:  <CAO8GK0qF==WdymkU9mZ1bMMPk-LswL8RB6ipCg4MK5rUtqo-aw@mail.gmail.com> <19E33DDA-E850-466F-9BD9-EB7ED257E428@gmail.com> <CAO8GK0rJusLgMqy__SEzzvtpbA5KFCCZC7Mw=NSvdfHx4Rnxtw@mail.gmail.com> <CAO8GK0o1P-vsqO9%2BPVzT0YEZZ7awsE81H4DWcYwJVLiGOmyNLA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On 17 February 2015 at 01:10, Arseny Nasokin <eirnym@gmail.com> wrote:

> On 16 February 2015 at 17:04, Arseny Nasokin <eirnym@gmail.com> wrote:
>
>> On 16 February 2015 at 15:34, Garrett Cooper <yaneurabeya@gmail.com>
>> wrote:
>>
>>> On Feb 16, 2015, at 4:28, Arseny Nasokin <eirnym@gmail.com> wrote:
>>>
>>> > Geom XML output is failed to build.
>>> >
>>> > Build box SVN version is: CURRENT-r265265.
>>> >
>>> > Related log output is:
>>> >
>>> > --- sbin.all__D ---
>>> > /usr/obj/usr/src/tmp/usr/lib/libgeom.a(geom_xml2tree.o): In function
>>> > `geom_xml2tree':
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x5e): undefined referenc=
e
>>> to
>>> > `XML_ParserCreate'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xa2): undefined referenc=
e
>>> to
>>> > `XML_SetUserData'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xb4): undefined referenc=
e
>>> to
>>> > `XML_SetElementHandler'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xc1): undefined referenc=
e
>>> to
>>> > `XML_SetCharacterDataHandler'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xdb): undefined referenc=
e
>>> to
>>> > `XML_Parse'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xfd): undefined referenc=
e
>>> to
>>> > `XML_ParserFree'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x373): undefined
>>> reference to
>>> > `XML_ParserFree'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x37d): undefined
>>> reference to
>>> > `XML_GetErrorCode'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x397): undefined
>>> reference to
>>> > `XML_ParserFree'
>>> > /usr/obj/usr/src/tmp/usr/lib/libgeom.a(geom_xml2tree.o): In function
>>> > `StartElement':
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x3eb): undefined
>>> reference to
>>> > `sbuf_new'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x735): undefined
>>> reference to
>>> > `XML_StopParser'
>>> > /usr/obj/usr/src/tmp/usr/lib/libgeom.a(geom_xml2tree.o): In function
>>> > `EndElement':
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x7bb): undefined
>>> reference to
>>> > `sbuf_finish'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x7d0): undefined
>>> reference to
>>> > `sbuf_data'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x7e9): undefined
>>> reference to
>>> > `sbuf_delete'
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xa25): undefined
>>> reference to
>>> > `XML_StopParser'
>>> > /usr/obj/usr/src/tmp/usr/lib/libgeom.a(geom_xml2tree.o): In function
>>> > `CharData':
>>> > /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xc62): undefined
>>> reference to
>>> > `sbuf_bcat=E2=80=99
>>>
>>> I think the fact that it=E2=80=99s missing sbuf* is the underlying caus=
e for the
>>> failures seen here. Can you please post more context in a pastebin or
>>> something (what phase did buildworld fail, what options did you pass to
>>> make, i.e. -DNO_CLEAN, etc?)?
>>>
>>> Thanks!
>>>
>>
>> Thank you for fast reply,
>>
>> I remove /usr/obj/usr and $TMPDIR explicitly with rm(1) and
>> chflags(1) and only then build world. (I use separate $TMPDIR for that
>> process)
>>
>> # make toolchain 'SRCCONF=3D/path/to/src.conf' -DNO_CLEAN
>> '__MAKE_CONF=3D/dev/null' 'TARGET=3Damd64'
>> # make buildworld 'SRCCONF=3D/path/to/src.conf' -DNO_CLEAN
>> '__MAKE_CONF=3D/dev/null' 'TARGET=3Damd64'
>> ...
>>
>> The stage is: 4.4 (building everything)
>>
>> Build script is here:
>> https://bitbucket.org/eirnym/bsd/src/9822ba9b1ed54414a79d5a632b3857f8b67=
1c769/builder/mkw.sh?at=3Ddefault
>>
>> -- Eir Nym
>>
>
>
> Full log is here http://eroese.org/_/_/pub/bsd/world.amd64.278844.log
> (~23 Mb)
>
> Recent part is:
>
> gzip -cn /usr/src/sbin/atm/atmconfig/atmconfig.8 > atmconfig.8.gz
> =3D=3D=3D> sbin/badsect (all)
> cc  -O2 -pipe   -DNDEBUG -std=3Dgnu99 -fstack-protector -Wsystem-headers
> -Wall -Wno-format-y2k -Wno-uninitialized -Wno-pointer-sign -Wno-empty-bod=
y
> -Wno-string-plus-int -Wno-unused-const-variable -Wno-tautological-compare
> -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function
> -Wno-enum-conversion -Wno-switch -Wno-switch-enum
> -Wno-knr-promoted-parameter -Qunused-arguments -c
> /usr/src/sbin/badsect/badsect.c
> ctfconvert -L VERSION badsect.o
> ERROR: ctfconvert: badsect.o doesn't have type data to convert
> cc  -O2 -pipe   -DNDEBUG -std=3Dgnu99 -fstack-protector -Wsystem-headers
> -Wall -Wno-format-y2k -Wno-uninitialized -Wno-pointer-sign -Wno-empty-bod=
y
> -Wno-string-plus-int -Wno-unused-const-variable -Wno-tautological-compare
> -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function
> -Wno-enum-conversion -Wno-switch -Wno-switch-enum
> -Wno-knr-promoted-parameter -Qunused-arguments  -static -o badsect
> badsect.o  -lufs
> ctfmerge -L VERSION -o badsect badsect.o
> ERROR: ctfmerge: No ctf sections found to merge
> gzip -cn /usr/src/sbin/badsect/badsect.8 > badsect.8.gz
> =3D=3D=3D> sbin/bsdlabel (all)
> cc  -O2 -pipe   -DNDEBUG -std=3Dgnu99 -fstack-protector -Wsystem-headers
> -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes
> -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual
> -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align
> -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls
> -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations
> -Wthread-safety -Wno-empty-body -Wno-string-plus-int
> -Wno-unused-const-variable -Qunused-arguments -c
> /usr/src/sbin/bsdlabel/bsdlabel.c
> ctfconvert -L VERSION bsdlabel.o
> ERROR: ctfconvert: bsdlabel.o doesn't have type data to convert
> cc  -O2 -pipe   -DNDEBUG -std=3Dgnu99 -fstack-protector -Wsystem-headers
> -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes
> -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual
> -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align
> -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls
> -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations
> -Wthread-safety -Wno-empty-body -Wno-string-plus-int
> -Wno-unused-const-variable -Qunused-arguments -c
> /usr/src/sbin/bsdlabel/../../sys/geom/geom_bsd_enc.c
> ctfconvert -L VERSION geom_bsd_enc.o
> ERROR: ctfconvert: geom_bsd_enc.o doesn't have type data to convert
> cc  -O2 -pipe   -DNDEBUG -std=3Dgnu99 -fstack-protector -Wsystem-headers
> -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes
> -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual
> -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align
> -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls
> -Wold-style-definition -Wno-pointer-sign -Wmissing-variable-declarations
> -Wthread-safety -Wno-empty-body -Wno-string-plus-int
> -Wno-unused-const-variable -Qunused-arguments  -static -o bsdlabel
> bsdlabel.o geom_bsd_enc.o  -lgeom
> /usr/obj/usr/src/tmp/usr/lib/libgeom.a(geom_xml2tree.o): In function
> `geom_xml2tree':
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x5e): undefined reference to
> `XML_ParserCreate'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xa2): undefined reference to
> `XML_SetUserData'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xb4): undefined reference to
> `XML_SetElementHandler'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xc1): undefined reference to
> `XML_SetCharacterDataHandler'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xdb): undefined reference to
> `XML_Parse'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xfd): undefined reference to
> `XML_ParserFree'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x373): undefined reference t=
o
> `XML_ParserFree'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x37d): undefined reference t=
o
> `XML_GetErrorCode'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x397): undefined reference t=
o
> `XML_ParserFree'
> /usr/obj/usr/src/tmp/usr/lib/libgeom.a(geom_xml2tree.o): In function
> `StartElement':
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x3eb): undefined reference t=
o
> `sbuf_new'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x735): undefined reference t=
o
> `XML_StopParser'
> /usr/obj/usr/src/tmp/usr/lib/libgeom.a(geom_xml2tree.o): In function
> `EndElement':
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x7bb): undefined reference t=
o
> `sbuf_finish'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x7d0): undefined reference t=
o
> `sbuf_data'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0x7e9): undefined reference t=
o
> `sbuf_delete'
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xa25): undefined reference t=
o
> `XML_StopParser'
> /usr/obj/usr/src/tmp/usr/lib/libgeom.a(geom_xml2tree.o): In function
> `CharData':
> /usr/src/lib/libgeom/geom_xml2tree.c:(.text+0xc62): undefined reference t=
o
> `sbuf_bcat'
> cc: error: linker command failed with exit code 1 (use -v to see
> invocation)
> *** Error code 1
>
> Stop.
> make[4]: stopped in /usr/src/sbin/bsdlabel
> *** Error code 1
>
>
> -- Eir Nym
>

Hi guys,

I've found the reason and I've fixed it.

The reason is I build world with WITHOUT_DYNAMIC_ROOT option. The library
libgeom depends on libbsdxml and libsbuf which will not linked to target
program in this case.

I have the patch for several programs in sbin and usr.sbin to fix this
problem.


-- Eir Nym



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAO8GK0rwunK9CFTjyekc8SDFn-iDnAL3sm5bAbCytcCder2smw>