zoukankan      html  css  js  c++  java
  • delphi DCC32命令行方式编译delphi工程源码

    本文链接地址:http://blog.csdn.net/sushengmiyan/article/details/10284879

    作者:苏生米沿

    Borland出品的Delphi,在TIOBE公布的2013年8月份编程语言排行榜中已经下降到14名。虽然排名下降,但是仍可以看出,使用delphi进行编程的还是大有人在,delphi现在确实有点落伍,加上borland公司的落没,尤其是对网络的支持不足,delphi目前的处境还是可以接受的,但同样不可否认的是,delphi在快速界面应用程序开发中还是有着不可比拟的优势,或许这就是为什么其还能具有这么强大生命力的原因吧。好了,废话不多说。开始进入主题:DCC32编译程序。

    通常情况下,我们使用delphi IDE就可以直接编译程序,不需要使用DCC32命令行方式来编译,不过,当项目发展到一定规模的时候,或者当你厌倦了大项目中IDE蜗牛般的编译速度的时候,你可能就会有这样的想法:能不能写段代码,然后运行这段代码或者脚本,那项目就自己编译好了。嗯,如果你有这样的想法了,那这篇文章就很符合你的口味。


    一、首先找到这个可执行文件,熟悉delphi的人应该很容易就找到,打开你安装delphi的目录,如我的路径C:Program FilesDelphi_2007inDCC32.EXE 

    二、拷贝一份出来,我将其放在了我的测试目录下 :  F:SrcQMsgBuild

    三、现在就可以测试这个命令了。使用windows的cmd命令,切换到当前DCC32所在的目录,先输入 f:切换到F盘,然后输入 cd F:SrcQMsgBuild

    切换到DCC32所在目录,然后输入DCC32命令,如下图:


    当你出现这个界面,说明你已经成功调用DCC32命令了。然后下面是搜集的一些编译指令和命令。大家感兴趣的话可以去手动写代码然后编译试试,这里就不详细写了哦。

    Delphi’s命令行编译器(dcc32.exe)允许你从DOS命令行方式(参照:IDE命令行选项)实现IDE编译器(delphi32.exe)的所有功能。用DOS命令运行命令行编译器语法如下:

    dcc32 [选项] [文件名] [选项]

    零或多个参数给编译器提供信息,文件名指定需要编译的源文件名。如果你单独输入dcc32,它会显示一个关于命令行编译的选项和语法的屏幕。

    如果文件名没有扩展名,命令行编译器会查找扩展名为.dpr的同名文件,如果找不到,则查找扩展名为.pas的同名文件。如果你的源文件确实没有扩展名,你需要在文件名的末尾添加(.)。

    如果指定的源文件是一个工程文件,编译器会创建一个扩展名为.EXE的同名可执行文件。如果指定的源文件是一个库文件,编译器创建一个扩展名为.DLL的同名动态链接库文件。如果指定的源文件是一个包文件,编译器会创建一个扩展名为.BPL的同名包。如果指定的源文件是一个单元文件,编译器会创建一个扩展名为.dcu的目标代码文件。

    你可以为命令行编译器指定多个参数。一个参数包含一个破折号“-”(或“/”)和紧跟着的一个选项字符构成。通常情况下,选项字符后面会跟一些附加的信息,如一个数字、一个符号、一个目录等。选项可以是任意顺序并且可以在源文件名前面或后面。

    同样,Delphi支持用编译器指令关键字描述的编译器指令。使用“$”和“D”命令行选项可以改变所有的默认编译器状态。用“$”和“D”命令行选项等同于在源文件的前面添加编译器指令。

    编译器指令选项开关

    “$”允许你改变每一种编译器指令默认状态。编译器指令的语法是“$”后紧跟一个指令字符,再跟一个“-”或“+”。例如:

    dcc32 MYSTUFF-$R-

    不使用边界检查编译MYSTUFF.pas单元:

    dcc32 MYSTUFF-$R+ 

    使用界面检查编译MYSTUFF.pas单元。如果将编译器指令{$R+}或{$R-}添加到源文件的开始,它将覆盖从命令行传入的参数。

    你可以用多个“$”来指定多个编译器指令,如:

    dcc32 MYSTUFF-$R--$I--$V--$U+

    命令行编译器允许作用逗号分隔的编译器指定列表,如:

    dcc32 MYSTUFF-$R-,I-,V-,U+

    只需要用一个“$”符号。

    注意,因为$M的格式不一样,你不能在逗号分隔的指令列表中使用$M

    条件编译选项

    “-D”选项允许你定义一个编译条件,符合你用{$DEFINEsymbol}定义的编译器指令。“-D”选项后必须跟随一或多个用分号分隔的编译条件符号,如下命令:

    dcc32 MYSTUFF-DIOCHECK;DEBUG;LIST

    定义了三个编译条件符号:IOCHECK,DEBUG,LIST,用于MYSTUFF.pas单元中。这等同于在源文件中插入以下语句:

    {$DEFINEIOCHECK}

    {$DEFINE DEBUG}

    {$DEFINE LIST}

    如果你指定了多个“-D”选项,你可以联接它们,如下:

    dcc32 MYSTUFF-DIOCHECK-DDEBUG-DLIST

    等同于第一个例子。

  • 相关阅读:
    poj-3580-SuperMemo-splay
    JS 添加到事件的多个对象
    1.9 效率高,安排约会
    我展示了视频采集前端vfe和camera,decode等交互驱动的体系结构
    2013年7月27日杂记
    深入JS系列学习4
    深入JS系列学习3
    深入JS系列学习2
    高质量JavaScript代码书写基本要点学习
    给硬件复兴把脉 硬件创新最有机会的十个方向
  • 原文地址:https://www.cnblogs.com/pangblog/p/3281273.html
Copyright © 2011-2022 走看看