[英]What is linker, compiler, assembler and elaborator in an IDE like CodeBlocks?
如果可能,什么是linker脚本?
有人,请帮我做图形。 提前致谢。
编译器和汇编器将源代码作为输入,生成机器语言(CPU 指令的二进制形式)的 object 代码文件。 主要区别在于编译器获取以 C/C++ 等高级语言编写的源代码,同时,汇编器获取以目标体系结构的特定汇编语言(代码将运行的 CPU)编写的源代码。 但是某些编译器可以将 output 汇编文本作为输入提供给汇编器。
linker将这些 object 代码文件放在一起并生成最终的可执行文件(或库)。 尽管某些编译器/汇编器没有外部 linker 因为链接是由它们在内部执行的。
linker 脚本在广义上是一种配置文件,它告诉 linker如何组合 object 文件的详细信息。
详细说明器或编辑器是您键入源代码的地方,它通常集成到 CodeBlocks 和 Visual Studio 等 IDE 中。
它们的关系如下: Editor
-> Compiler or Assembler
-> Linker (Configured by linker script)
-> Final executable or library
。
他们没有任何偏好。 他们做他们该做的事,他们没有选择权,我们告诉他们该做什么。
有关它们和示例的更多信息,请参阅这篇文章和谷歌“链接器脚本”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.