HOWTO: Build NSLU2 U-Boot on FreeBSD

Gary Jennejohn gary.jennejohn at freenet.de
Tue Oct 14 10:43:44 UTC 2008


On Tue, 14 Oct 2008 11:29:35 +0200
Rafal Jaworowski <raj at semihalf.com> wrote:

> Bruce M. Simpson wrote:
> > Building NSLU2 U-boot firmware on FreeBSD hosts
> 
> *snip*
> 
> > Toolchain setup
> > 
> > cd /usr/ports/devel/cross-binutils
> > env TGTARCH=arm TGTABI=rtems make install
> > 
> > cd /usr/ports/devel/cross-gcc
> > env TGTARCH=arm TGTABI=rtems make install
> > 
> > Get stas at FreeBSD.org's updated u-boot tarball:
> > uboot-atamantb.tar.bz2
> > Untar it
> 
> *snip*
> 
> > env CROSS_COMPILE=arm-rtems- gmake distclean
> > env CROSS_COMPILE=arm-rtems- gmake nslu2_config
> > env CROSS_COMPILE=arm-rtems- gmake
> 
> In general it should be possible to build U-Boot with our in-tree cross tool
> chain. I recall Marcel got this working with some patches against U-Boot build
> scripts, tools or makefiles; they were even accepted to main line U-Boot IIRC.
> 
> There's also another approach possible: using U-Boot native and ready to use
> build tools (ELDK) via Linux compat layer. I was working in such setup some
> time ago and it was fine with some minor tweaks because of differences in some
> of the GNU tools and ours. FWIW, my old notes on this from FreeBSD 5.x/6
> timeframe can be found here:
> http://www.denx.de/wiki/view/DULG/ELDKInstallationUnderFreeBSD
> 

Doesn't work anymore with more recent versions of u-boot.  It tries to
generate some native utilities which use Linux headers which conflict
with the native FreeBSD headers.

Judicious tweeking of include paths may solve the problem, but I only
spent a little time on it.

This is an unfortunate trend which I've also observed with Linux.
It is still possible to cross compile Linux 2.4.25 under FreeBSD, but
the Linux (and u-boot) developers keep adding more and more
Linux-specific utilities so that e.g. Linux 2.6.* _must_ be compiled
under Linux.

BTW I always use the ELDK since I work as a consultant for DENX.

---
Gary Jennejohn


More information about the freebsd-embedded mailing list