原创 备忘Mfile:不过新版本的WINAVR已经是好的了

2009-4-20 16:08 3394 8 7 分类: MCU/ 嵌入式

AVR-GCC“needed by 'xx.elf'”编译错误解决方案



初次使用AVR-GCC/WINavr,使用VC++6.0IDE,尝试编译程序时候总是出现如下错误:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


 


-------- begin --------


avr-gcc (GCC) <?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />3.4.6


Copyright (C) 2006 Free Software Foundation, Inc.


This is free software; see the source for copying conditions.  There is NO


warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


 


make.EXE: *** No rule to make target `obj/main.o', needed by `avrtest2.elf'.  Stop.


工具返回代码: 2


 


注意红字部分的描述


编译的时候,已经使用WinAVR自带工具MFile生成需要的Makefile文件,并且已经将Makefile文件加入到当前工程中(见附图1


 


解决此错误方法如下


 


问题出在由WinAVR自带工具MFile生成需要的Makefile文件上,这个自动生成的Makefile文件稍微有点问题(应该是用户在操作生成Makefile文件少做了一个步骤),注意下面从Makefile文件中摘抄出来的语句:


# Target file name (without extension).


TARGET = avrtest2


 


# Object files directory


OBJDIR = obj


 


# List C source files here. (C dependencies are automatically generated.)


SRC =


 


# List C++ source files here. (C dependencies are automatically generated.)


CPPSRC = main.cpp


 



下面(在当前工程所包含的makefile文件中)将红字部分改成如下:


 


# List C source files here. (C dependencies are automatically generated.)


SRC = $(TARGET).c


 


# List C++ source files here. (C dependencies are automatically generated.)


#CPPSRC = main.cpp


 


也就是上面那个加了一个$(TARGET).c


下面那个加了一个#号,把后面语句给注释掉


其他的不用动


保存


 


执行make clean


再执行make all


 


Visual c++ 6.0输出窗口已经没有上述错误提示了,编译问题搞定,下面就可以专心写程序了~~~


另外要注意,源程序文件名要和makefile中定义的target名字要一致

文章评论1条评论)

登录后参与讨论

用户273179 2010-6-3 17:00

你太牛逼了~~
相关推荐阅读
用户146369 2010-05-11 20:06
几个中兴华为3G模块比较
注:X表示资料中未提及。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />参数MC86...
用户146369 2010-05-11 17:55
关于移动通信的一些基本概念和3G(最近学习笔记,不一定对)
名词解释:IMT-2000:国际移动通信2000                   工作在2000MHz,最高2000kbit/s(至少:室内2Mbit/s,室外步行384kbit/s,室外车载14...
用户146369 2010-03-15 16:09
小鲍子回来了
好久没来了,没来的这段时间主要是上课,跟师兄后面做嵌入式软件,然后陆续的出差。现在刚接了一个网络摄像头的新项目,搜资料一不小心搜到这里,突然想回来了。接下来的日子,与EDN一起进步...
用户146369 2009-03-15 16:08
TIP:mega128 and max485
大致情况:M128连接MAX485,再通过485转232转换器连接到上位PC机。出现问题:M128与上位机的通讯能发能收,但收发的数据通通不正确。M128接收的错误数据多是255,发送的错误数据多出现...
用户146369 2009-03-04 17:01
ADI的客服气死我啦!
本来周围人就告诫我说ADI的样片难弄,可惜我这次偏偏要用到几种ADI的片子,没法子硬着头皮去申请。登陆后,网上选好了我要的样片;结果跳出来的网页ADI的客服要我们打电话过去,说是申请流程的一部分。最让...
我要评论
1
8
关闭 站长推荐上一条 /2 下一条