`
zhangyafei_kimi
  • 浏览: 261834 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

在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

Whole Program Optimization - No

Code Generation, the Basic Runtime Checks - Default

Enable Incremental Linking - no

Linker, Command Line - 添加一个额外的链接参数/fixed:no

之后要重新编译

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


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

相关推荐

Global site tag (gtag.js) - Google Analytics