About the support of aarch64

Rob Landley rob at landley.net
Wed Mar 15 12:01:50 UTC 2017


On 01/09/2017 08:26 AM, ANDY KENNEDY wrote:
> Because uClibc is dead.

As the guy who staged the coup to appoint the current maintainer a
decade ago and then watched him _not_ get the NPTL mess sorted or the
project back on a regular release schedule, I agree: uClibc is dead. Has
been for a while, replaced by musl-libc (chromeos) and bionic (android).

I wrote a long eulogy for the project last year on the buildroot list
explaining how it died and why I consider the uClibc-ng project to be
beating a dead horse:

  http://lists.busybox.net/pipermail/buildroot/2016-December/180102.html

Of course that particular exercise in necromancy is no sillier than a
half-dozen other such projects I could name. Heck, there's open source
projects _today_ to clone OS/2 http://www.osfree.org/ BeOS
https://www.haiku-os.org/ AmigaOS http://aros.sourceforge.net/ Windows
95 https://www.reactos.org/ and there are even a bunch of operating
systems written entirely in assembly (menuet, kolibri, mikeos,
baremetal...).

> You may be able to get support from
> devel at uclibc-ng.org where a new maintainer picked up uclibc
> and started a fork.

*shrug* Good luck with if if you decide to go that way.

> The current uclibc maintainer hasn't posted to this list,
> unless I am mistaken, since before 7/28/2016.

You might have better luck with http://musl-libc.org which already
supports aarrcchh64. The https://github.com/richfelker/musl-cross-make
toolchain builder presumably can build current cross and native
toolchains for all the supported targets. (There's some buildroot
support as well, but not as thorough as musl-cross-make. I have a todo
item to talk Rich into posting prebuilt binary toolchains each release,
and to get my https://github.com/landley/mkroot project to have simple
root filesystems you can drop the native toolchains into to build linux
from scratch. It's on my todo list, but not near the top.)

For nommu targets musl only supports fdpic and static pie (no binflt).
Meaning if you want to use cortex-m with musl you need to either
--enable-default-pie in your gcc build (plus the tiny kernel patch to
enable binfmt_flat on cortex-m and teach it to load pie binaries) or
else grab the full fdpic for cortex-m support patches (which modify the
compiler and linker as well as the kernel) from those french guys who
did it.

But arrch64 should work fine without that, it's got an mmu so it's
standard ELF all the way

Rob

P.S. Remind me to write up a proper explanation of nommu executable
formats for the kernel Documentation directory...


More information about the uClibc mailing list