IDE 之类的 CodeBlocks 中的链接器、编译器、汇编器和精化器是什么?

What is linker, compiler, assembler and elaborator in an IDE like CodeBlocks?

IDE 由链接器、编译器、汇编器和精化器组成。我想了解他们如下:

If possible, what is linker scripts?

谁能帮我画个图。 提前致谢。

一个编译器和一个汇编器作为输入源代码并生成机器语言的目标代码文件(CPU说明)。主要区别在于编译器采用高级语言编写的源代码,例如 C/C++,同时,汇编器采用目标体系结构的特定汇编语言编写的源代码(CPU你的代码将 运行)。但是一些编译器可以输出汇编文本,然后将其作为汇编程序的输入。

A linker 将这些目标代码文件放在一起并生成最终的可执行文件(或库)。虽然有些 compilers/assemblers 没有外部链接器,因为链接是由它们在内部执行的。

链接器脚本广义上是一种配置文件,告诉链接器如何结合的细节目标文件。

elaboratoreditor 是您输入源代码的地方,它通常集成到 IDE 中,例如 CodeBlocks 和 Visual Studio.

他们的关系如下: Editor->Compiler or Assembler->Linker (Configured by linker script)->Final executable or library.

他们没有任何偏好。他们做他们做的事,他们没有选择权,我们告诉他们该做什么。

请参阅此 post 和 google "Linker scripts" 了解有关它们的更多信息和示例。