基于 GCC 构建的 Clang
Clang built on GCC
我在网上搜索以查看 clang 是否支持可重现的构建。我读到 GCC 使用 -frandom-seed
标志保证可重现的构建。我想知道 clang 是否支持该标志,但我找不到任何关于 that.I 的信息,然后出现了 here,它有一个声明,例如:
...two consecutive builds of (GCC-built) Clang
我的问题是什么是 GCC 构建的 clang?我目前只知道 2 个编译器(Microsoft、GCC(可能是 Cygwin/Mingw 风格)),第三个应该是 clang。我的问题是 clang(GCC 内置)是什么意思?从源代码构建?我认为 clang 是一个与 GCC 和 Windows 完全不同的编译器。此外 this 此处的文档指出
Clang has experimental support for targeting “Cygming” (Cygwin /
MinGW) platforms.
这是什么意思? clang 是否意味着它使用 Mingw GCC 作为编译器?定位在这里是什么意思?
在我看来,这句话意味着 clang 是使用 GCC 作为编译器从源代码构建的。那么,clang是一个编译器,所以它不能把GCC当作编译器使用。
编译器是用编程语言编写的,以便能够编译用编程语言编写的代码。这意味着,一个编译器可以编译一个编译器甚至它自己。
如果您不知道产品 Y 是否支持功能 X,请阅读产品 Y 上的文档。如果未提及此功能,则表示它不受支持并且反之亦然。
我在网上搜索以查看 clang 是否支持可重现的构建。我读到 GCC 使用 -frandom-seed
标志保证可重现的构建。我想知道 clang 是否支持该标志,但我找不到任何关于 that.I 的信息,然后出现了 here,它有一个声明,例如:
...two consecutive builds of (GCC-built) Clang
我的问题是什么是 GCC 构建的 clang?我目前只知道 2 个编译器(Microsoft、GCC(可能是 Cygwin/Mingw 风格)),第三个应该是 clang。我的问题是 clang(GCC 内置)是什么意思?从源代码构建?我认为 clang 是一个与 GCC 和 Windows 完全不同的编译器。此外 this 此处的文档指出
Clang has experimental support for targeting “Cygming” (Cygwin / MinGW) platforms.
这是什么意思? clang 是否意味着它使用 Mingw GCC 作为编译器?定位在这里是什么意思?
在我看来,这句话意味着 clang 是使用 GCC 作为编译器从源代码构建的。那么,clang是一个编译器,所以它不能把GCC当作编译器使用。
编译器是用编程语言编写的,以便能够编译用编程语言编写的代码。这意味着,一个编译器可以编译一个编译器甚至它自己。
如果您不知道产品 Y 是否支持功能 X,请阅读产品 Y 上的文档。如果未提及此功能,则表示它不受支持并且反之亦然。