我跟着线性FS文档。
我不太明白为什么它需要两次编译。
我猜:
我们需要目标系统的glibc,如果用宿主机的gcc编译,就无法与宿主机分离了。所以我们需要先构建新系统的binutils和gcc来构建目标系统的glibc,让glibc与目标系统的binutils和gcc连接。但是第一遍 binutils 和 gcc 使用的是主机的 glibc,所以我们需要第二遍编译目标的 binutils 和 gcc。
这些对吗?
我有什么遗漏或误解吗?
谢谢~
答案1
正确的。作为龙书解释说,您必须首先构建一个为目标构建的主机二进制文件,然后使用它来构建为目标构建的目标二进制文件。