凡亿教育-娟娟
凡事用心,一起进步
打开APP
公司名片
凡亿专栏 | Cadence Capture 常见启动故障总结
Cadence Capture 常见启动故障总结

今天有小伙伴向老wu咨询了个Capture 16.6的启动异常问题,如下图所示

551d9bb675603f0aa206dacddb7423.jpg

这个问题老wu之前也有遇到过,只是当时没有找到造成该异常的真正原因,所以直接使用了重装操作系统大法解决了。今天再次面对这个启动异常的问题,老wu建议其尝试了清空Spb_data目录,卸载VC  2005运行库之后重装Cadence SPB 自带的VC  2005运行库等修复方法,但启动异常问题依然存在。

b0abb67f10eb634734831eac07c7b3.jpg

4af589a153e8cba8b9950ab5230305.jpg

如果采用重装操作系统大法肯定是能解决问题,但重装完操作系统之后又要重装许多应用软件,也是挺折腾人的事情,所以觉得有必要花时间分析一下,彻底搞定这个启动异常的问题。

该排查的地方也都排查过了,只能是先跟踪下capture的启动过程,看下都调用了哪些配置文件和dll,看看能不能找到些线索。

74a042d23c27892d585724e7a052e3.jpg

果然发现了问题点,16.6的Capture.exe 去调用了17.4的dll,所以造成了启动异常。

问题根源找到了,那解决思路就清晰了,Cadence程序的相关dll文件路径是在环境变量里设置的,应该是PATH的读取优先级问题。PATH中的dll读取策略是从PATH中配置的路径头部开始读取,读取到同名的dll文件之后就不会再继续往后读取了,所以这里先把17.4的dll路径往下移降低其读取优先级,将ROOT%对应的路径排在前边即可。

8ac3097e1bd1e10d28311da0a2fc84.jpg

总结一下,这个启动异常的问题是同时安装了多个版本的Cadence SPB造成的,如果先装了高版本的SPB如17.4再装16.6应该不会有问题,而如果先装的16.6后装的高版本,则后装的Cadence相关的库路径会在PATH里排在前边(读取优先级更高),造成16.6读取到了高版本的dll文件所以加载出错了。

另一个常见的多版本共存的问题也是先装16.6后装17.4造成的,如下图所示的cdn_xxx开头的错误。

61de7601b0dab2f06bd370d2d6d3e1.jpg

这是因为后装的高版本Cadence SPB修改了ROOT%这个环境变量,指向了高版的SPB的安装路径造成16.6启动读取dll文件出现版本异常,此时只需手动修改环境变量CDSROOT,指向16.6的安装后的路径即可,如下图所示

0b3bdb23c3d34e1fa83da21cddb1ae.jpg

还有一个非常常见的问题是16.6的VC   2005 运行库造成的问题,如下图所示

93dcf3e3a017ebf7bfe8ea52cf03cb.jpg

这个只需卸载系统里现有的VC   2005的运行库后重新安装16.6自带的运行库即可。

e873733b8d09862aca5e899d0222f5.jpg

Cadence 16.6的VC   2005运行库在16.6的安装后的路径『SPB_16.6 ools\msbase』下,vcredist_x86.exe和vcredist_x64.exe都装上即可。

e1dbb845aa4f4b6cf8cc1fe48a9e46.jpg


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表凡亿课堂立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。
相关阅读
进入分区查看更多精彩内容>
精彩评论

暂无评论