【发布时间】:2009-01-30 03:22:54
【问题描述】:
我安装的时候不太明白Linux内核的编译过程 我机器上的 Linux 系统。
以下是一些让我感到困惑的事情:
- 内核是用 C 语言编写的,但是如何在没有安装编译器的情况下编译内核?
- 如果在编译内核之前在我的机器上安装了 C 编译器,如何在没有安装编译器的情况下编译编译器本身?
这两天我很困惑,谢谢你的回复。
【问题讨论】:
-
据了解,C 编译器是由 AT&T 实验室的一些疯狂而聪明的人用某种汇编程序编写的,用于为给定的计算机编译 UNIX(请注意,历史始于 UNIX,而不是linux,所以我担心你会错过一章......或其中几个!)。简短的故事是,只要这些计算机具有适当的 C 语言编译器,就不需要为不同的计算机重写 unix 内核。这些编译器是在目标计算机的特定汇编器中编写的。粗鲁的说法“首先用给定计算机的 assambler 编写编译器,然后用 C 编写 UNIX”
标签: c linux compiler-construction