[原创].如何解决Nios II SBTE中出现的undefined reference to `xxx'警告
0赞
发表于 2011/1/4 22:10:08
阅读(5552)
问题描述
有时候编译Nios II SBTE工程,就会出现莫名其妙的警告。例如下面的警告:
解决方法
方法1 重建工程法
此法较为愚笨,不推荐使用。
重新建立一个带BSP模板的Nios II SBTE Application Project;将源码拷贝至新的APP工程内;右键APP工程的Properties,将源码路径添加到APP路径中;重新编译,一般情况下即可OK。
说 点题外话,Nios II这个Application Path的添加每次只能选一个文件夹,非常令人发指。拜托学学MDK。以前的Nios II IDE是基于cygwin虚拟机的,慢得要死;现在从良了,换eclipce+gcc了,拜托Altera公司能把Nios II EDS做得人性化点,不要总学得不伦不类。
方法2 修改Makefile法
此法甚好,强烈建议掌握并能举一反三
打开APP工程内的Makefile,寻找C_SRCS关键字,没有的话自己手动加入。
# Paths to C, C++, and assembly source files. C_SRCS += src/debug/debug.c CXX_SRCS := ASM_SRCS :=
注意到问题描述中是undefined reference to `main' ,那我们就手动把main.c的路径加进去。
# Paths to C, C++, and assembly source files. C_SRCS += src/debug/debug.c C_SRCS += src/main.c CXX_SRCS := ASM_SRCS :=
Refresh一下APP工程,重新编译,警告将不复存在。