代码之家  ›  专栏  ›  技术社区  ›  Sadique

我想知道我们使用的ide是否包含链接器

  •  0
  • Sadique  · 技术社区  · 14 年前

    3 回复  |  直到 14 年前
        1
  •  7
  •   Péter Török    14 年前

    它是编译器/IDE的一部分。或者准确地说,编译器和链接器是独立的程序(在构建可执行文件的不同阶段调用),但通常整个程序组(包括几个其他可执行文件)被称为 编译程序

    链接器不是操作系统的一部分,尽管某些操作系统(如Linux)可能与一个(甚至多个)链接器捆绑在一起,作为某些编译器工具链的一部分。不管怎样,您可以在同一操作系统上安装和使用多个不同的编译器(每个编译器都包含自己的链接器)。例如,在Windows操作系统上,两者都可以 gcc msvc 尽管gcc不能与visualstudioide一起使用,因为它只与msvc捆绑在一起。但是阿法克 Eclipse

    更新: 你似乎被这两个名字之间的相似性搞糊涂了 linker in the compiler toolchain 以及 dynamic linker 一个操作系统。

    静止的 动态 加载 在操作系统的帮助下,然后调用库方法。这是由操作系统的一部分完成的,不幸的是,它被称为 动态链接器 -但是,这与编译器工具链中的链接器完全不同,应该调用它 .

    共享 在内存中,即相同的库代码可以由多个可执行文件并行使用(因此它们也被称为 共享库 ). 而从静态库复制的代码在所有可执行文件中都是重复的。

        2
  •  1
  •   Kyle Lutz    14 年前

    链接器是编译器工具链(预处理器->编译器->汇编程序->链接器)的一部分。

        3
  •  0
  •   Andrey    14 年前

    它通常是编译器的一部分。从技术上讲,编译器和链接器是不同的工具,但它们通常结合在一起。