所有由雷老虎发布的文章

BPL包无法调试的问题

    由于系统结构是Host主程序动态加载BPL包的模式。所以用到了Package的调试,但无论如何有一个包就是无法调试(加断点不起作用)。经过N久的查找,发现:
    1.包Package在编译,生成的时候会自动产生DCP和BPL文件,缺省产生到Delphi/Projects/BPL下。
    2.BPL文件的生成路径可以在Project/Options/Directories中修改
    3.多个Package联合调试时,最好把DCP生成在同一个路径下,并且在Tools/Invironment Options/Library的Library Path中添加。
    4.调试时Delphi在Library中按从上到下的顺序搜索DCP文件,如果第一个搜索到的DCP和最新的源代码是配套的,会进入调试,否则不会进入调试。

    我遇到的问题是这样造成的:首先保存了一个包,顺手Build了一下,这时候生成的BPL和DCP都在Delphi/Projects/BPL下。后来又改了Project中的DCP生成路径,生成到专门放DCP的文件夹。在后来的运行调试中,由于系统第一个会找到我生成到Delphi/Projects/BPL下的那个没有任何功能的DCP,自然和我目前的BPL是不匹配的,所以就无法调试。

    做开发不能调试实在是太痛苦了,终于在忍耐了一周之后要彻底解决这个问题,吃过晚饭七点多搞到现在凌晨两点,才算是搞清楚了,以后再也不会被包的调试困住了。

不能在Kettle目录外运行kitchen.sh(含官方解释)

you can’t run kitchen.sh from outside the kettle directory cuz the script sets LIBPATH to be a relative path.to fix, you should change to an absolute path. though i’m not sure why you need LIBPATH here, cuz it seems like kitchen should need these libs cuz it doesn’t use the graphics libraries. only spoon should need that stuff.–alex

 下面是该BUG的跟踪情况: