Crochet Updates for RPi, BeagleBone

Ulrich Grey usenet at ulrich-grey.de
Tue Aug 11 08:23:04 UTC 2015


On Mon, 10 Aug 2015 21:27:20 -0700
Tim Kientzle <tim at kientzle.com> wrote:

> 
> > On Aug 10, 2015, at 3:30 PM, Ulrich Grey <usenet at ulrich-grey.de> wrote:
> > 
> > On Sun, 9 Aug 2015 11:32:00 -0700
> > Tim Kientzle <tim at kientzle.com> wrote:
> > 
> >> 
> >>> On Aug 8, 2015, at 7:23 PM, Ian Lepore <ian at freebsd.org> wrote:
> >>> 
> >>> On Sat, 2015-08-08 at 12:01 -0700, Tim Kientzle wrote:
> >>>>> On Aug 8, 2015, at 11:22 AM, Ian Lepore <ian at freebsd.org> wrote:
> >>>>> 
> >>>>> On Sat, 2015-08-08 at 10:52 -0700, Tim Kientzle wrote:
> >>>>>>> On Aug 6, 2015, at 4:15 PM, kah42pub <kah42pub at blarg.com> wrote:
> >>>>>>> 
> >>>>>>> On 7/19/15 18:39, Tim Kientzle wrote:
> >>>>>>>> I just committed changes to Crochet so that it now uses the U-Boot ports for
> >>>>>>>> RPi and BeagleBone (including BBB).  It already used the port for RPi2.
> >>>>>>> 
> >>>>>>> Has anyone successfully built the u-boot-rpi port recently for RPI-B?
> >>>>>> 
> >>>>>> I just tried building each U-Boot port with an upgraded -CURRENT system
> >>>>>> (including packages).  Looks like anything based on U-Boot older than 2015.04 is
> >>>>>> broken:
> >>>>>> 
> >>>>>> The following did not build for me:
> >>>>>> u-boot-beaglebone (uses U-Boot 2014.10)
> >>>>>> u-boot-cubox-hummingbird (based on U-Boot 2013.10)
> >>>>>> u-boot-duovero (based on U-Boot 2014.10)
> >>>>>> u-boot-pandaboard (uses U-Boot 2014.10)
> >>>>>> u-boot-rpi  (based on U-Boot 2013.01)
> >>>>>> u-boot-wandboard (based on U-Boot 2013.10)
> >>>>>> 
> >>>>>> These did build:
> >>>>>> u-boot-bananapi (uses U-Boot 2015.04)
> >>>>>> u-boot-cubieboard (uses U-Boot 2015.04)
> >>>>>> u-boot-cubieboard2 (uses U-Boot 2015.04)
> >>>>>> u-boot-rpi2 (uses U-boot 2015.04)
> >>>>> 
> >>>>> The cross-compiler port used for u-boot got upgraded behind our backs to
> >>>>> gcc5, and that breaks all the u-boots that are based on older
> >>>>> vendor-supplied sources.  I have a new arm-none-eabi-gcc492 port ready
> >>>>> to go, but I'm not a ports committer, so I'm waiting for someone to
> >>>>> review and approve the commit.
> >>>> 
> >>>> Great!
> >>>> 
> >>>> Keeping old GCC versions available in the ports tree sounds like a
> >>>> good plan in general.
> >>>> 
> >>>>> I also plan to try and get as many of our u-boot ports as possible
> >>>>> updated to the latest mainline u-boot sources, but I still want to get
> >>>>> the gcc492 port in first because I think updating to mainline u-boot is
> >>>>> more than a day or two of work.
> >>>> 
> >>>> Thanks for your work on this.
> >>>> 
> >>>> Cheers,
> >>>> 
> >>>> Tim
> >>> 
> >>> I just committed the fixes for all the u-boot ports on your 'did not
> >>> build' list.  I also snuck in the fix for the cubox-hummingboard port to
> >>> make the board detection work, and it should choose the right fdt file
> >>> now for hummingboard users.
> >> 
> >> After updating my ports tree, I was able to build every U-Boot port on an up-to-date
> >> -CURRENT system.
> > 
> > After updating the ports tree I can not build devel/arm-none-eabi-gcc492 in a
> > changeroot.
> > 
> > gcc.o:(.rodata+0x88c): undefined reference to `host_detect_local_cpu(int, char
> > const**)' c++: error: linker command failed with exit code 1 (use -v to see
> > invocation) Makefile:1805: recipe for target 'xgcc' failed
> > gmake[2]: *** [xgcc] Error 1
> > gmake[2]: *** Waiting for unfinished jobs....
> > 214 warnings generated.
> > 3 warnings generated.
> > 11 warnings generated.
> > rm gcc.pod
> > gmake[2]: Leaving directory '/usr/ports/devel/arm-none-eabi-gcc492/work/build-gcc/gcc'
> > Makefile:3967: recipe for target 'all-gcc' failed
> > gmake[1]: *** [all-gcc] Error 2
> > gmake[1]: Leaving directory '/usr/ports/devel/arm-none-eabi-gcc492/work/build-gcc'
> > ===> Compilation failed unexpectedly.
> > Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
> > the maintainer.
> > *** Error code 1
> > 
> > Stop.
> > make: stopped in /usr/ports/devel/arm-none-eabi-gcc492
> > 
> > ===>>> make build failed for devel/arm-none-eabi-gcc492
> > ===>>> Aborting update
> 
> You?re building this on ARM?

Yes, I don't have mentioned it. Sorry.
root at wqtest:~ # uname -ap
FreeBSD wqtest 11.0-CURRENT FreeBSD 11.0-CURRENT #0 r286407M: Fri Aug  7 19:39:51 UTC
2015     root at wqtest:/usr/local/DEVEL/obj/usr/local/DEVEL/SRC/head/sys/IMX6  arm armv6

> 
> If so, you might need the patch below.  It was in the old GCC port before it got
> upgraded to 5.2.0, but may have been omitted from the new 4.9.2 port.
> 
> $ svn diff -c 389741 https://svn.freebsd.org/ports
> Index: head/devel/powerpc64-gcc/files/patch-gcc-freebsd-arm
> ===================================================================
> --- head/devel/powerpc64-gcc/files/patch-gcc-freebsd-arm	(revision 0)
> +++ head/devel/powerpc64-gcc/files/patch-gcc-freebsd-arm	(revision 389741)
> @@ -0,0 +1,11 @@
> +--- gcc/config.host-orig	2015-04-05 20:24:52.780459000 +0000
> ++++ gcc/config.host	2015-04-05 20:25:38.250952000 +0000
> +@@ -99,7 +99,7 @@
> + esac
> + 
> + case ${host} in
> +-  arm*-*-linux*)
> ++  arm*-*-*)
> +     case ${target} in
> +       arm*-*-*)
> + 	host_extra_gcc_objs="driver-arm.o"
> 

Thank you for the patch.
I have applied your patch to devel/arm-none-eabi-gcc492 and now it works.
I have built successfully:

u-boot-beaglebone
u-boot-cubox-hummingboard
u-boot-wandboard
u-boot-rpi

Ulrich




More information about the freebsd-arm mailing list