Raspberry pi not ready to self-host yet?
Warner Losh
imp at bsdimp.com
Mon Jun 24 15:01:33 UTC 2013
On Jun 24, 2013, at 8:55 AM, Jordan K. Hubbard wrote:
> Hi folks,
>
> I followed the instructions in the repo at https://github.com/daveish/freebsd-arm-tools.git and was able to create a bootable SD image for my 512Mb PI in no time with very little hassle - nice job there!
>
> What I can't seem to manage, however, is to self-host after that. I see someone has already filed http://www.freebsd.org/cgi/query-pr.cgi?pr=178495 covering the failure during buildworld, You see the same compilation error in basic_string.tcc in various ports, like apr:
>
> 0. Program arguments: /usr/bin/c++ -cc1 -triple armv6-unknown-freebsd10.0 -S -disable-free -main-file-name cxx_db.cpp -mrelocation-model pic -pic-level 2 -mdisable-fp-elim -mconstructor-aliases -target-abi apcs-gnu -target-cpu arm1136jf-s -msoft-float -mfloat-abi soft -target-feature +soft-float -target-feature +soft-float-abi -target-feature -neon -coverage-file /tmp/cxx_db-5qpGsC.s -resource-dir /usr/bin/../lib/clang/3.3 -D _THREAD_SAFE -D PIC -I . -I ./../dist/.. -O2 -fdeprecated-macro -fno-dwarf-directory-asm -fdebug-compilation-dir /a/ports/databases/db42/work/db-4.2.52/build_unix -ferror-limit 19 -fmessage-length 144 -mstackrealign -fno-signed-char -fobjc-runtime=gnustep -fobjc-default-synthesize-properties -fcxx-exceptions -fexceptions -fsjlj-exceptions -fdiagnostics-show-option -fcolor-diagnostics -backend-option -vectorize-loops -o /tmp/cxx_db-5qpGsC.s -x c++ ./../dist/../cxx/cxx_db.cpp
> 1. /usr/include/c++/4.2/bits/basic_string.tcc:978:43: current parser token ';'
> 2. /usr/include/c++/4.2/bits/basic_string.tcc:48:1 <Spelling=/usr/include/c++/4.2/bits/c++config.h:76:38>: parsing namespace 'std'
> c++: error: unable to execute command: Segmentation fault (core dumped)
> c++: error: clang frontend command failed due to signal (use -v to see invocation)
do you have enough swap? Clang is a memory pig dog...
> In the kernel, there seems to be something weird with the atomics because linking always fails:
>
> kern_event.o: In function `filt_timerattach':
> /a/src/sys/kern/kern_event.c:555: undefined reference to `__atomic_load_4'
> /a/src/sys/kern/kern_event.c:559: undefined reference to `__atomic_compare_exchange_4'
> kern_event.o: In function `filt_timerdetach':
> /a/src/sys/kern/kern_event.c:584: undefined reference to `__atomic_fetch_sub_4'
Now that's odd. I'll look into that...
> I do appreciate that it's a heck of a lot easier to cross-compile for these things, and great work getting things to this point, but self-hosting is still one of the magical milestones you always hope an embedded target will get to someday, assuming it actually has enough grunt to do so (and I think the PI does). :)
I've self-hosted FreeBSD on an Atmel AT91SAM9620 recently (arm v5 board)... Seems odd that cross compile and native built give different results. Will look into it. Btw, whats uname -p say for you?
Warner
More information about the freebsd-arm
mailing list