抛弃IDE,手工打造绿色编译环境

     最近的项目已经被我放置到了持续集成系统的控制之下,主要使用了CruiseControl和ANT来进行持续构建,但由于项目使用到了BDS 2006作为开发工具,而服务器并没有安装也不愿意去安装BDS,所以怎么在不安装IDE的情况下获得编译环境是个问题。

    仔细分析了一下ANT的机制,它可以使用命令行调用编译器来编译程序,而不需要IDE程序,因此BDS的IDE环境实际上是一个附带编译器的独立程序,那么,打造绿色的BDS编译环境是可能的。经过几个小时的摸索,最终找到了解决方法。

    首先,需要把其它机器中,BDS安装目录下的所有文件以及控件目录复制到服务器上,该目录包含了BDS的所有编译器、库文件等信息。如果想获得最小的精简版本,可以删除其下的Demos、Welcomepage、Help、QualityCentral,和其它目录中的以dcl开头的BPL文件(这些都是在IDE运行时才需要的文件)。

    之后,将BDS所在目录的bin文件夹的路径添加到PATH变量之中,以便在任何位置都能找到编译程序,添加完毕,打开cmd控制台,运行dcc32,检查是否成功添加,如果提示dcc32的函数说明,则证明编译程序路径配置成功。

    PATH路径配置完毕,接下来的工作是配置编译路径,即编译单元库的路径。打开BDS安装目录的bin目录,其下我们可以找到4个cfg文件,而这四个文件对应了4个exe格式的编译器,在cfg文件中则是编译器默认的参数,4个编译器配置方法相同,我们只以dcc32.exe为例。打开dcc32.cfg,我们可以看到以下内容:

 -aWinTypes=Windows;WinProcs=Windows;DbiProcs=BDE;DbiTypes=BDE;DbiErrs=BDE
-u"G:/Borland/BDS 2006/BDS/4.0/lib";"G:/Borland/BDS 2006/BDS/4.0/lib/Obj"

    其中指定了编译器的几个参数,这里我们只看-u这个参数,-u指定了单元库的寻找路径,安装完BDS程序,则它默认指向安装目录下的lib和lib/Obj,多个路径使用分号“;”隔开。(注意,如果安装目录被复制到了其它路径,那我们需要更改这个参数。)这个参数是我们绿色编译环境成功的关键所在。

    通常情况下,BDS启动运行之后,其IDE会从注册表中读取我们在Option中预先设定好的library路径,该路径会在IDE启动编译程序时传给编译器,但我们的绿色版本并没有注册表,也不会启动IDE,那么就需要我们手动来增加library路径了。依照例子,将library中的路径全部添加进来,我们便可以使用命令行随时随地来编译我们的程序了,当然使用ANT更是易如反掌(谁说一定要用WANT的?呵呵)。

    另外,如果我们使用ANT来编译程序,那么也可以使用更灵活的build.xml配置文件来指定所需要的路径,选择哪种方式依个人爱好选定。

你可能感兴趣的:(抛弃IDE,手工打造绿色编译环境)