新闻中心

EEPW首页 > 嵌入式系统 > 牛人业话 > DSP编程技巧之32---答疑解惑哪家强之(7)

DSP编程技巧之32---答疑解惑哪家强之(7)

作者:paradoxfx时间:2015-01-04来源:电子产品世界收藏

  答疑解惑哪家强?当属我们EEPW最强。。。接下来继续我们的答疑解惑。这次我们主要来看一下与编译器和链接器的常见错误、警告有关的问题原因和解决方法。

本文引用地址:http://www.eepw.com.cn/article/267640.htm

  40. 如何快速定位错误信息?

  在CCS V4及以上版本里,在编译、链接之后有一些错误和警告是包含有链接的,如下图所示。

  此时可以点击带下划线的超链接,从而显示出详细的错误信息,如下图所示。

  这个功能目前还没有非常智能化,例如下面的错误就没有更详细的提示信息。此时需要我们根据错误描述去尝试解决了。

  上面的错误解决起来也容易,它的意思是在链接器选项里使用了-l选项来引用库文件,却没有提供给它库文件的信息,所以就报错了。

  41. Warning: function declared implicitly,如何解决?

  这个警告是非常常见的,它表明在发生函数调用的时候,编译器发现函数并没有提前声明。因为这只是个警告信息,所以编译器会强迫自己来想象函数的参数和返回值,这样虽然有可能可以通过编译,结果却是存在隐患的,它会导致程序在运行时很难诊断运行时错误,甚至可能导致函数的输出与设计的功能完全不相关。

  然而你也可能会疑惑:一般大家都知道先声明再使用的原则,函数我已经在头文件里定义了啊?此时的问题是函数调用发生在头文件引用之前了,只要把头文件引用放在函数调用之前就能解决此问题,通常把头文件的引用放在调用这个函数的源程序的开头就好了。

  42. Error: could not open source file "xxx.h",如何解决?

  这个错误有点灰色幽默的感觉: 明明看到头文件就在工程列表里,我们双击也能打开它,编译器却就是死活不认识,还要报出什么致命性的错误。

  解决此错误可以使用下面的步骤:

  1. 检查头文件是否存在,并确认其名字是否正确。

  2. 经检查发现不存在上面的问题,则此时需要手动把头文件的路径指定给编译器。在CCS工程管理器中右键点击工程名,选择属性,并切换到头文件对应的选项卡,如下图所示。可以点击图中的方框框出来的+镜像添加,路径则即可以使用相对路径,也可以使用绝对路径,使用相对路径更容易方便工程的移动。

  注:上图中的ProjName是编译器中内置的系统变量,我们可以很方便地使用它们来构建头文件、库文件等的相对路径,如下图所示。

c++相关文章:c++教程



上一页 1 2 下一页

关键词: DSP 编程 芯片

评论


相关推荐

技术专区

关闭