crochet build fails at ubldr Wandboard-Dual

Waitman Gobble gobble.wa at gmail.com
Sun Apr 19 21:57:19 UTC 2015


Waitman Gobble
Los Altos, California USA
510 830 7975
On Apr 19, 2015 1:26 PM, "Tim Kientzle" <tim at kientzle.com> wrote:
>
>
> >>>
> >>> Somebody reported this on IRC yesterday as well, but I can't reproduce
> >>> it here.  I don't use crochet, so it must be doing something a bit
> >>> different to end up with the lib from /usr instead of the local one in
> >>> objdir.  There should be no need to set LIBSTAND externally.
> >>>
> >>
> >> Thanks for the reply. Unfortunately I missed the discussion on IRC.
> >>
> >> I suppose I'll have to backtrack through and find out where it
> >> _should_ be set to solve the problem. (?) For now, the workaround gets
> >> the build to finish.
> >>
> >
> > It shouldn't be set anywhere, it should just work.  That's kind of my
> > point... my build process is just the standard "make buildworld
> > TARGET_ARCH=armv6hf UBDLR_ADDR=<whatever>" and it just works.  I don't
> > know what crochet is doing differently (and you only included a fragment
> > of the build log that didn't include the command used to start the
> > build).
> >
>
>
> Crochet does use the standard build machinery; the only significant
difference is that it builds ubldr separately after a successful
buildworld.  Building ubldr separately allows it to reuse the buildworld
results when building for multiple boards with the same TARGET_ARCH but
varying UBLDR_LOADADDR.
>
> The detailed logic is in lib/freebsd.sh, I’ve pasted it below (with a few
variables substituted in and some error checking removed to clarify):
>
>     cd ${FREEBSD_SRC}
>     ubldr_makefiles=${FREEBSD_SRC}/share/mk
>     buildenv=`make TARGET_ARCH=$TARGET_ARCH buildenvvars`
>
>     cd ${FREEBSD_SRC}/sys/boot
>     eval $buildenv make UBLDR_LOADADDR=0x11000000 -m $ubldr_makefiles obj
>     eval $buildenv make UBLDR_LOADADDR=0x11000000 -m $ubldr_makefiles
clean
>     eval $buildenv make UBLDR_LOADADDR=0x11000000 -m $ubldr_makefiles
depend
>     eval $buildenv make UBLDR_LOADADDR=0x11000000 -m $ubldr_makefiles all
>
>     cd arm/uboot
>     eval $buildenv make UBLDR_LOADADDR=0x11000000 DESTDIR=${UBLDR_DIR}/
BINDIR=boot NO_MAN=true -m $ubldr_makefiles install
>
> The last bit here is just a way to get the FreeBSD makefiles to copy the
built executable to a known location (otherwise, Crochet has to reproduce
the FreeBSD build system logic for determining which objdir layout to use).
>
> Cheers,
>
> Tim
>

Thanks,

So maybe its truly a documentation issue since everyone is convinced
crochet is correct. I didnt see that mentioned in the docs.

Waitman


More information about the freebsd-arm mailing list