它可以作为C / assembly / object / executable编译器的一个例子?
我希望获得比维基百科提供的更多信息更多的信息。 此外,如果您可以链接一些我可以找到更多信息的来源,那就太棒了。
答案 0 :(得分:3)
从Wiktionary开始,工具链是:
一组用于软件开发的工具,通常按顺序使用,以便一个工具的输出包含下一个工具的输入。
GCC是GNU编译器集合;即来自GNU的一组不同语言的编译器。来自official webpage:
GNU Compiler Collection包括C,C ++,Objective-C,Fortran,Ada和Go的前端,以及这些语言的库(libstdc ++,...)。
因此,GCC工具链是一组应用程序和库,用于编译用多种语言编写的程序。例如,对于C和C ++语言,它包括如下工具:
cpp
预处理器gcc
C编译器g++
C ++编译器gcov
测试覆盖计划随附的图书馆如:
libbacktrace
符号回溯制作人libquadmath
四精度数学库libstdc++-v3
C ++标准库现在,当某人引用GCC工具链时,通常他们也暗中指其他可能不是来自GCC的项目/存储库但通常需要进行开发的实用工具。例如,工具如:
ar
归档操作程序as
汇编程序c++filt
C ++ demangler ld
链接器nm
目标文件符号列表objdump
对象文件信息转储程序如果您正在使用GNU中的这些工具的实现,那么您正在使用GNU Binutils项目:
GNU Binutils是二进制工具的集合。