Building an image for Raspberry Pi

Tim Kientzle tim at kientzle.com
Sun Apr 6 16:52:57 UTC 2014


On Apr 6, 2014, at 8:58 AM, Warner Losh <imp at bsdimp.com> wrote:

> 
> On Apr 5, 2014, at 11:14 AM, Tim Kientzle <tim at kientzle.com> wrote:
> 
>> 
>> On Apr 2, 2014, at 11:14 PM, Shawn Webb <lattera at gmail.com> wrote:
>> 
>>> On Apr 03, 2014 01:41 AM -0400, Glen Barber wrote:
>>>> You need to build the XDEV stuff for the build environment.
>>>> 
>>>> Something like: make -C /usr/src XDEV=arm XDEV_ARCH=armv6
>>>> 
>>>> should do the trick.
>>> 
>>> Yeah, I have the xdev stuff installed. It kinda seems like just using
>>> this xdev stuff isn't sufficient. It seems u-boot might require some
>>> gcc-centric items (though I'm unsure what they are).
>> 
>> Unfortunately, my time has been rather cramped, though
>> Tom Everett and Patrick Kelsey have been doing a bunch
>> of Crochet work recently.
>> 
>> The confusing part about U-Boot is that it requires two different compilers to build:
>> 
>> * Building the U-Boot loader needs an ARM cross-compiler and relies on GCC-specific options.
>> 
>> * U-Boot also builds some tools that run on the build host; that uses a different native compiler and does not seem to rely on GCC-specific features.
>> 
>> For the host tools, setting HOSTCC=cc always worked well
>> for me.  I never had any problems with clang or gcc as the
>> native host compiler for that part of U-Boot.
>> 
>> For the loader itself, you can try the XDEV tools (which last
>> I checked still built GCC) or you can try the ARM EABI
>> GCC cross-compiler from ports (which may be broken; I
>> volunteered to maintain it and then ran out of time to work on it).
>> 
>> One specific GCC-ism used by U-Boot (an option to reserve
>> a specific CPU register for global data) was added to clang
>> recently but I don't know if that's reached FreeBSD yet.  That
>> might allow clang to build the U-Boot loader, but it will require
>> some work: the XDEV target also builds ARM binutils and
>> cross-libraries which are essential.
> 
> With the switch to clang on arm recently, the XDEV tools have started building a clang compiler. Should we force it to build a gcc compiler instead?

Certainly, it would be nice to have an option for a GCC XDEV.

Tim




More information about the freebsd-arm mailing list