在VS2005中使用IBM Purify的注意事项

Rational Purify 使用及分析实例可以见这里http://www.ibm.com/developerworks/cn/rational/r-cail

但是如果使用VC7,8,9的默认编译和链接设置,那是肯定找不到准确的错误位置的。
为此,需要在VC8(VC7和VC9类似)中一些编译和链接参数要修改如下:
Debug Information Format - Program Database
在VS2005中使用IBM Purify的注意事项_第1张图片
Whole Program Optimization - No
在VS2005中使用IBM Purify的注意事项_第2张图片
Code Generation, the Basic Runtime Checks - Default
在VS2005中使用IBM Purify的注意事项_第3张图片
Enable Incremental Linking - no
在VS2005中使用IBM Purify的注意事项_第4张图片
Linker, Command Line - 添加一个额外的链接参数/fixed:no
在VS2005中使用IBM Purify的注意事项_第5张图片
之后要重新编译

编译出来的pdb文件和exe或dll文件要在一个文件夹中。如果不在要把pdb拷过来。
安装Microsoft Debugger Interface Access SDK,VS2005默认包含。
然后就可以使用Purify了。直接打开运行就可以了。其他具体过程见手册吧,这里说也是浪费功夫。


使用Purify时的注意事项:
微软提供的STL中,经常会报出UMR errors,基本可以无视。
关于UMR,可能并不是程序的问题,是purify不够智能,很多情况都可能导致这种误判断。所以,这种错误,自己揣摩吧。
如果要分析大程序,会很耗时间。用半个小时都有可能,要耐心。插入指令的过程本来就需要时间。
插入指令的过程可能崩溃,重新编译一次试试,如果不行就向IBM提交bug吧。
关于程序崩溃,最好禁止一些dump模块或功能。
用purify运行会比原来程序慢,如果依赖于时间或定时器,可能行程序为会不一样,特别注意。

你可能感兴趣的:(IBM,Microsoft,Access)