What is it all about?
Embedded GLIBC (EGLIBC) is a discontinued variant of the GNU C Library (glibc), optimised for use in embedded devices, while still attempting to remain source- and binary-compatible with the standard glibc. The authors claim that EGLIBC was not intended to be a fork of glibc, but rather a variant, accepting patches that the core glibc developers may reject.
* Support for configurability - A primary feature of EGLIBC is support for configurability. You can build EGLIBC without support for NIS, locales, or other things that you may not need in your embedded system. * Compatibility - EGLIBC strives to be source- and binary-compatible with GLIBC. In default configuration EGLIBC is fully GLIBC-compatible. * Cross-building - EGLIBC contains various improvements and bug fixes to support building of EGLIBC for targets that do not provide enough resources to run the compiler, assembler, linker and other necessary tools. EGLIBC aims to provide exactly the same installation whether building natively or in cross environments. EGLIBC documents and supports procedure for bootstrapping a cross toolchain without having previously installed libc binaries for that target. * Cross-testing - Developers writing software for embedded systems often use a desktop or other similarly capable computer for development, but need to run tests on the embedded system, or perhaps on a simulator. When configured for cross-compilation, the stock GNU C library simply disables running tests altogether: the command make tests builds test programs, but does not run them. EGLIBC provides facilities for compiling tests and generating data files on the build system, but running the test programs themselves on a remote system or simulator. * System-specific APIs - EGLIBC incorporates support for processor-specific functionality. FSF GLIBC's policy is to provide the same API across all architectures. This policy sometimes prevents functionality that is useful on, or that can be efficiently implemented on, only a subset of architectures from being included in the library. EGLIBC's policy is to include system-specific APIs when it is technically justified. * Building with -Os - EGLIBC supports building the library with compiler optimizing for size -Os instead of for speed -O2. * Building without compatibility code - EGLIBC includes fixes that allow building the library without compatibility code, thus reducing the library footprint.