Delphi编译、调试的路径搜索

Delphi编译、调试的路径搜索方案

  现在还经常有同事和朋友问我怎么编译不了程序,或断点不起作用等等问题,今天索性就把我知道的东西整理出来供需要的朋友参考参考。由于这部分东西没发现有正式文档说明,只是本人靠经验摸索出来的,所以不能保证肯定正确无误,讲的不对的地方就请指出来。

  
  1. Delphi编译的时候,对于需要用到的单元文件是按着先搜索.pas文件后搜索.dcu文件的顺序进行。就是说先搜索.pas文件,如果.pas文件没有搜索到,然后再搜索相应的.dcu文件。如果都没有找到,编译器就会报找不到***.dcu文件的错误。
  
  2. 对应编译、调试的搜索路径是按着"项目文件--》项目搜索路径--》IDE环境Library路径--》系统环境变量里的路径"的顺序进行搜索。所以提示找不到.dcu的时候,只要看看.pas文件或.dcu文件是否在上面的这些路径里,如果不在,在合适的地方把文件路径添加进去即可。注意:搜索路径的顺序很重要,不是危言耸听。
  
  3. 至于不能断点的问题,基本可以确定是没有找到.pas文件或没有找到"含有Debug信息"的.dcu文件。这里着重强调含有Debug信息的.dcu文件是因为Delphi默认搜索路径"$(delphi)\lib"下的VCL源码的.dcu文件是不含Debug信息的,这也就是为什么默认情况下VCL源码断不下来的原因。细心的人会发现"$(delphi)\lib"下有个"Debug"的文件夹,而且里面也都是VCL源码对应的.dcu文件,这些就是含有Debug信息的.dcu文件。所以只要能找到这些.dcu文件就可以调试VCL源码了。
  有些人会说只要"User Debug Dcus"就可以调试VCL源码了,说的不错,确实如此,但选择这个选项归根结底还是把"$(delphi)\lib\Debug"添加到了搜索路径里,并且优先于其他路径进行搜索,所以就能调试VCL源码了。打开"Debugger Options"就可以看到"Debug Dcu Path:"下面写的就是"$(delphi)\lib\Debug",看到这估计能明白怎么回事了吧。
  当然你也可以直接把"$(delphi)\lib\Debug"添加到搜索路径,或者直接把VCL源码.pas文件的路径添加到搜索路径,记住一定要位于"$(delphi)\lib\"的前面,这样就可以对VCL源码进行调试了。调试其他控件的源码跟这类似。
  
  方法各种各样,只要明白了怎么回事,什么问题都可以解决。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值