2011-06-19 29 views
1

是给定ISA的各种语言对象代码的共同链接器吗?还是各种语言需要单独的链接器为底层平台?我了解链接器是一个系统软件,应该对所有人都是通用的吗?所有语言的常见链接

回答

0

首先你需要明白链接器链接目标代码。这个目标代码是机器(通常是操作系统)特定的。有几种不同的标准目标代码格式。链接器不能链接来自不同机器体系结构的目标代码。即使它可以这样做,它也不会执行。也就是说,只要编译器运行在同一台机器上,有时甚至是相同的操作系统,几乎总是可以链接来自不同语言的目标代码。例如,如果您使用C创建了一个程序,并且希望将其链接到一个Pascal目标文件,通常这会起作用。最流行的目标代码格式称为COFF object code。 COFF代码几乎是目标代码公认的标准格式。使用什么语言编译器生成代码并不重要(只要它来自相同的机器体系结构),大多数链接器将理解能够链接COFF文件。