To me, that is a bad thing and we agree that diversity should be possible.
We do not agree that “most Linux installs are going to be using Bionic”. Android uses the Linux kernel but it is not what people mean when they say “Linux”. The applications running on Android and the ones running on your Linux desktop are separate universes.
Speak for yourself.
In my mind, Linux is home routers, smart TVs, digital signage, tablets, smartphone, fridges, and yes, servers and workstations.
I too would like the standard C library to be an actual standard with multiple compliant and compatible implementations, and I'd like apps to work correctly across multiple implementations.
"Standard" is one of those words that can mean different things. Insisting on one absolute definition and calling anyone who uses another definition "disingenuous" is not hugely constructive.
It's also ironic coming from someone who's opening salvo was to describe a post about musl being "non-standard" as constituting a "serious allegation".
Nobody said anything about an absolute definition.
When describing the C standard library, the only reasonable interpretation of "nonstandard" is that it does not adhere to standard C. There are no counter-examples anyone has been able to provide from any corpus.
No, that is your interpretation, and one that, so far as I can tell from all of the responses in this thread, you are alone in believing.
> There are no counter-examples anyone has been able to provide from any corpus.
* https://elinux.org/images/1/15/Anatomy_of_Cross-Compilation_... 2016, see page 14 "de facto standard of Linux C libraries"
* https://www.linuxjournal.com/article/3417 (June 1999) -- "Linux has now standardized on the GNU C library (glibc) as the common implementation for future Linux systems."
* https://www.reddit.com/r/C_Programming/comments/9g6531/where... "For the standard library, uCLibC and muSL are the two lightweight (and thus likely easier to understand) libraries. GLibC ("libc") is more or less the de-facto standard C library for all non-windows (and even some windows) development."
* https://man.archlinux.org/man/glibc.7 -- "For a while, Linux libc was the standard C library in many Linux distributions."
It requires some effort to migrate applications to musl, and there are functional differences from glibc. https://wiki.musl-libc.org/functional-differences-from-glibc...
No, it isn't. It's the GP's opinion.
Standard has a few different meanings, including something typically or commonly used. As in "GNU Libc has been the standard C library used by Linux distributions since 1991." That would be, you know, a statement of fact. Musl is, at best, a niche option used by a few distros.
Using musl is fine for limited uses, but it's magical thinking to believe that it's at exact feature and functional parity replacement for glibc.