gpt4 book ai didi

gcc - 为什么 GCC 会自己编译 3 次?

转载 作者:行者123 更新时间:2023-12-03 14:00:24 55 4
gpt4 key购买 nike

我已经从源代码编译了 GCC,但我似乎无法完全理解 gcc 的效用自行编译 次。

这有什么好处?

answer说:

  • Build new version of GCC with existing C compiler
  • re-build new version of GCC with the one you just built
  • (optional) repeat step 2 for verification purposes.


现在我的问题是,一旦第一步完成并构建了编译器 为什么要浪费时间重建它?

只是为了验证吗?如果是这样,那似乎很浪费。

事情变得更复杂 over here ,

The build for this is more complex than for prior packages, because you’re sending more information into the configure script and the make targets aren’t standard.



我的意思是整个编译器都是用 C 编写的,那么为什么不一次性完成所有事情呢?

三相自举有什么用?

提前致谢。

最佳答案

  • 阶段 2. 和 3. 是对编译器本身的一个很好的测试:如果它可以编译自己(通常还有一些库,如 libgcclibstdc++-v3 ),那么它可以咀嚼非平凡的项目。
  • 在阶段 2. 和 3. 中,您可以生成编译器不同的选项,例如不优化 ( -O0 ) 或优化 ( -O2 )。由于程序的输出/副作用不应取决于所使用的优化级别,因此编译器的任一版本都必须生成相同的二进制文件,即使它们是非常不同的二进制文件。这是编译器的另一个(运行时测试)。

  • 如果您出于某种原因更喜欢非 bootstrap ,请配置 --disable-bootstrap .

    关于gcc - 为什么 GCC 会自己编译 3 次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60567540/

    55 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com