EGLIBC (Embedded GLIBC)一開始應該是真的因為glibc太痴肥,在embedded的system上效能不張(西元2005是沒有cortex可用的)而發起的計畫,可參見jserv寫的"EGLIBC初探"和"EGLIBC於S3C2410 ARM SoC的體驗",但是後來2009-05-05 Debian 的maintainer Aurelien 宣布Debian以後要用EGLIBC,主要原因有:
- Stable branch with fixes for important bugs (a real one, not like the GLIBC one which is left unchanged).
- Better support for embedded architectures.
- Support for different shells (GLIBC only supports bash).
- Support for building with -Os.
- Configurable components (do we really need NIS or RPC support in debian-installer?).
- Better testsuite for optimized or biarch packages.
其實這都只是場面話,主要的原因是GLIBC的領導人Ulrich Drepper,是個很機車的人,怎麼機車不是很清楚,不過developer對他的形容有 - Ulrich Drepper, is.. lets say very uncooperative when it comes to patches.
- The maintainer of glibc (Ulrich Drepper) rules with an iron fist.
- eglibc is a goodescape from the Fearless Leader (stated with no offense, Ulrich).
- The switch is happening because maintainer of glibc is (I've heard) an asshole. ICBW.
- Ulrich Drepper is a moron.
- 比較激烈一點
對於patches和架構有他自已堅持,以致於很多patch都不了mainline,GLIBC也有很嚴格的release procedure,一次就要搞六個月有對於某些平台的人似乎是太久了,這對Debian 這個支援許多平台的分支造成很大的困擾,所以只好fork另外一個branch出來自已maintain
至於有什麼差別呢?目前看起來沒什麼差別,EGLIBC就是一個有拉新的patch進mainline 的GLIBC,不像GLIBC六個會有一次minor release,EGLIBC import GLIBC main release 的source code,然後就一直merge patch,所有的code要從svn上checkout下來。根據官網所言
Embedded GLIBC (EGLIBC) is a variant of the GNU C Library (GLIBC) that is designed to work well on embedded systems. EGLIBC strives to be source and binary compatible with GLIBC. EGLIBC's goals include reduced footprint, configurable components, better support for cross-compilation and cross-testing.
沒什麼特殊要求的話,應該可以安心使用