• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

关于delphi编译路径设置问题

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

公司有一个控件是用delphi编的,有bug需要修改,我接手之后就开始修改。因为工程使用了大量的外部控件,而且有些源代码需要用最新版替换掉,所以我决定把这些外部控件的源代码整合到一个project group中去。原来以为简单的一个dpk工程的compile和install,谁知道这个工作耗费了将近2天时间。问题很简单,不是不能通过编译,而是明明编译成功的bpl文件,却报告路径找不到。

经过时断时续的多种方法尝试,终于找到了一个比较满意的工程路径设置规范,记录如下。

在delphi中有两处涉及到路径的配置,一个是菜单tools\options中的environment options/delpihi options/library位置,使用者可以设置库文件查找路径(library path),包输出路径,dcp文件的输出目录,源代码浏览路径等,我这里用到两个,一个是package output directory,另外一个是dcp output directory。前者是bpl包的输出目录,后者是dcu文件的输出目录。这个是系统默认的输出设置,我们这里也不要去修改。

另外一处是project本身的options设置,这里和默认输出有些不一样,设置的是输出目录(output directory),单元文件输出目录,查找路径,dcp输出目录等。我们这里要做如下的设置:

output directory:留空,使用全局设置

dcp output directory:留空,使用全局设置

unit output directory:所有工程设置成同一个输出,比如..\output。记住要设置路径,否则别人拿到你的工程一样会麻烦。

search path:该位置用于告诉编译器如何寻找pas、dcu文件。一定要包含unit output directory的内容,比如..\output。看情况加入其他的查找位置。

这样设置之后,整体编译就不会出问题了。原理很简单:以上两个留空的设置会自动使用相应的全局设置,而这两个全局设置已经被包含在默认的全局查找路径中了。

我决定把这个设置作为公司的标准设置。

-------------------------------------------------------------------

以下附录是delphi相关文件后缀的含义,摘自这里

.dcu: (delphi compiled unit)源代码编译之后的输出文件,一个源代码文件对应一个dcu文件,只有源代码文件被修改之后才会重新编译,用于加速编译过程。

.dfm: (delphi form)和pas文件配合,定义界面。

.dcp: 二进制映像文件,包含符号信息和ide需要的其他附加信息,ide构建工程的时候需要这个文件。

.bpl或者.dpl:设计时包或者运行时包。其实是一个加入了delphi特性的dll文件。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap