今天调试6678 nor flash加载代码的时候,发现CCS V5的一个bug

lelee007   2014-1-19 15:40 楼主
很是郁闷,折腾了两天时间,今天实在受不了了,决定无论如何得把这个问题搞定 然后理了理思路,然后决定看看这个bug到底能不能修正一下 下面先介绍一下这个bug到底长啥样 简单点来说,就是在链接选项里边添加additional flag之后了,link选项里边没有显示手动新添加的,然后新添加进去的链接选项也没法修改 当然,如果链接选项添加的无任何问题,即使看不见、不能修改,那倒也无所谓了,但是有时候如果手误一不小心弄了个错误的选项进去之后,看不见,又修改不了,然后编译的时候,一直报错,那你接下来会如何做咧?抛弃整个工程,然后把源码文件抠出来重建一个工程??? 嗯嗯,相信会有人这么干,如果对编译链接技术不太了解的话,但是哥向来是个喜欢较真的,这个bug是TI的软件的问题,咱可能解决不了,但是这个bug导致的问题,肯定是有办法解决的。因为这些配置,最后肯定都是都是写入了一些工程配置文件中去了,即使在图形界面的view里边看不见,不能修改,但是如果找到了根源,就是工程配置文件,那应该就能解决掉了吧 好了,思路已经说的差不多了,下面把bug展示给大家看看吧 从这个截屏中可以看出,链接选项里边没有额外添加进去的选项,然后标识1处可以看出,是可以正常编译链接的 001 本帖最后由 lelee007 于 2014-1-19 21:13 编辑

回复评论 (5)


这里来手动添加一些链接选项,这里为了演示错误,加了一个不存在的链接库
002.png

添加完链接选项之后,我们可以观察一下链接选项,我们添加进来的: -lccsv5_view_has_a_little_bug 根本没在链接选项中显示出来
003.png
实际并非是我们的链接选项没添加进来,而是添加进来之后,没有在那个链接选项的view里边显示出来
为什么这么说了,可以看看下面蓝色框圈中的部分,这个是编译链接的时候报出来的错误信息,错误原因就是
找不到ccsv5_view_has_a_little_bug这个库文件,之所以找不到这个库文件,是因为我们构造了一个错误的链接选项,
要链接的库文件确实不存在,这也说明了我们添加的链接选项确实是添加到实际的链接选项中去了

前面说过,虽然添加进链接选项了,但是没显示出来,也没法修改,这样整个工程就没法再继续使用了,
为了找出这个添加进去的选项最后在哪个配置文件里边,搜了一下工程目录,发现在.cproject文件里边有这个错误的链接选项
打开找到这个库文件名的配置,如下图

005.png
这个语法不太懂,然后试着把又这个错误链接选项的东东给删掉,然后再回到CCS V5中去编译相应的工程,就不会再报找不到这个库文件的错了

看来确实是把配置放在这个配置文件里边,删掉这个之后,就把没显示出来的链接选项里边的错误搞掉了

哎,感觉这个问题应该是CCS V5的一个小bug,因为在compile选项里边添加额外选项之后,就可以显示出来,而且自己添加的选项也是可以修改的,但是link的这个选项就是显示不出来


点赞  2014-1-19 15:55
你可以到TI的官方论坛上报告这个bug,他们的反应速度还是挺快的。
点赞  2014-1-20 21:07
没到TI官方社区反馈过问题,不清楚如何操作

这个问题应该很容易暴露的,只能说明CCS V5在release的时候,测试不过关

现在一堆问题要研究,时间也不是很充裕,懒得去TI社区反馈了
点赞  2014-1-21 23:23
引用: lelee007 发表于 2014-1-21 23:23
没到TI官方社区反馈过问题,不清楚如何操作

这个问题应该很容易暴露的,只能说明CCS V5在release的时候 ...

我们把你的文章推荐给TI 让他们看看问题所在 哈
加油!在电子行业默默贡献自己的力量!:)
点赞  2014-1-22 11:11
那就麻烦soso啦
点赞  2014-1-22 19:10
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复