|
发表于 2008-7-11 13:25:02
|
显示全部楼层
这个问题的根源在于Richard M. Stallman,甚至可追溯到c语言创建者Ken Thompson、Dennis Ritchie。
gnu工具链分散在三个软件包
binutils——汇编器、连接器
gcc——预处理器、编译器
glibc——c库
好处是灵活,可以使用其他c库,如uclibc、uc-libc、newlib,
坏处是gcc、glibc有循环依赖问题,工具链自举时需要编译gcc两编,
第一遍编译的gcc是裸编译器,也就是没有任何库支持的编译器,只能编译glibc、linux-kernel等一类完全自给自足的软件包。
如果把3者整合到一个软件包,一编编译工具链是可能的,可这样与unix哲学相违背。
PS:中文已经把stallman糟蹋了,为“高人”默哀。 |
|