【温故Delphi】之编译与链接(转)

时间:2021-12-29 20:29:31

  本文基本转自“Delphi编译/链接过程” @瓢虫Monster,向瓢虫君学习,:) 

  下图展示了Delphi是怎样编译源文件,并把它们链接起来,最终形成可执行文件的。

【温故Delphi】之编译与链接(转)

  当Delphi编译项目(Project)时,将编译项目源文件、窗体单元和其他相关单元,在这个过程中将会发生好几件事情:

  首先,Object Pascal编译器把项目单元文件编译为二进制对象文件(dcu);

  然后资源编辑器将把诸如程序图标、窗体文件等资源编译成二进制资源文件;

  接着链接开始起作用,链接器根据编译器产生的二进制文件,依项目需要增加一些库文件,并把这些文件综合在一起产生最终的可执行文件。

编译、创建和链接

【温故Delphi】之编译与链接(转)

Syntax check Project1 

  它能让Delphi编译工程,并且报出任何错误和警告,这时检查代码错误最快的方法,Delphi只编译工程,而不执行链接,Syntax check选项的目的就是尽快检查代码的语法错误,因为链接阶段需要占额外的时间,Syntax check忽略了这一步。界面如下:

【温故Delphi】之编译与链接(转)

Compile Project1 

  就像Syntax check一样,它用来编译从最近一次编译后改动过的任何单元。它需要执行链接,因此比Syntax check 选项所占的时间稍长一点,当需要只编译和链接程序而不运行时就可以用Compile 选项。界面如下:

【温故Delphi】之编译与链接(转)

Build project1

  这个选项编译工程中的每一个单元,不管这个单元是否有改动,当编译完所有单元后,Delphi链接整个工程,并生成Project1.exe可执行文件。