Hit a milestone with FreeBSD-12.0-CURRENT-arm64-aarch64-RPI3-20180611-r334983.img

For the first time in my experience, the Raspberry Pi3 has been able to self-host a full system build for me. I had to knudge it along at one point, but it eventually completed a full buildworld and buildkernel.

Running make with 3 threads didn't work (buildworld stopped). So I dropped the number of threads to 1, and buildworld completed. But buildkernel stopped with some out of space condition:
Code:
linking kernel.full
ctfmerge -L VERSION -g -o kernel.full ...
objcopy: elf_update() failed: I/O error: No space left on device
*** [kernel.full] Error code 1

On a lark, I changed /etc/fstab to bump the tmpfs size from 50M to 80M, rebooted, started buildkernel again, and buildkernel completed. The installs worked, and the Pi3 successfully booted with the new system.
 
fwiw, using 1 thread, buildworld took about 3 days to complete, buildkernel about 12 hours.
 
fwiw, using 1 thread, buildworld took about 3 days to complete, buildkernel about 12 hours.
That's what cross-compiling is for, so you can compile it faster on a different computer of a different architecture for the Pi's architecture.
 
That's what cross-compiling is for, so you can compile it faster on a different computer of a different architecture for the Pi's architecture.
That is NOT what cross-compiling should be used for! Cross compiling should be only used by developers to port OS to the new architectures. If an arch is not self-hosting it is not usable by a general public.

Cross-compiling BS have effectively put the last nail in the coffin of NetBSD. Due to cross-compiling NetBSD have effectively reduced itself from 50+ architectures to amd64 OS.
 
For the first time in my experience, the Raspberry Pi3 has been able to self-host a full system build for me. I had to knudge it along at one point, but it eventually completed a full buildworld and buildkernel.
Well done!
 
  • Thanks
Reactions: Oko
That is NOT what cross-compiling should be used for! Cross compiling should be only used by developers to port OS to the new architectures. If an arch is not self-hosting it is not usable by a general public.

Cross-compiling BS have effectively put the last nail in the coffin of NetBSD. Due to cross-compiling NetBSD have effectively reduced itself from 50+ architectures to amd64 OS.
Cross-compiling is also for when you don't want to spend 3-4 days doing a build of the embedded system for your target as you develop it.
 
Back
Top