一个简单的makefile不能构建,求助.

HonryZZ 2010-11-02 08:44:01
makefile内容如下:


# test
RSC1_PATH = ./makefile2/APP1/Source/
RSC2_PATH = ./makefile2/APP2/Source/
RSC3_PATH = ./makefile2/APP3/Source/
RSC4_PATH = ./makefile2/APP4/Source/
RSC5_PATH = ./makefile2/APP5/Source/

OBJ_PATH = ./makefile2/Objs/

Module += $(OBJ_PATH)app1Main.obj $(OBJ_PATH)app2Main.obj $(OBJ_PATH)app3Main.obj $(OBJ_PATH)app4Main.obj $(OBJ_PATH)app5Main.obj


vpath %.c $(RSC1_PATH) $(RSC2_PATH) $(RSC3_PATH) $(RSC4_PATH) $(RSC5_PATH)
vpath %.obj $(OBJ_PATH)

.SUFFIXES :
.SUFFIXES : .obj .c .h .cpp

.PHONY : update
update : $(Module)
.c.obj:
gcc -o $(OBJ_PATH)$@ -c $<



每次都提示
make: *** No rule to make target 'makefile2/objs/app1Main.obj', need by 'update'. stop

上面已经设置了vpath 去查找C的路径了吧...后面的后缀规则不好使么..?
我在其他地方看到过类似的代码,执行的就很好....只是那是在一个大的项目中...
不晓得我这个简单的是哪里出了问题...

...全文
110 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhutianjin4355255 2010-11-02
  • 打赏
  • 举报
回复
楼主先吧app1屏蔽掉试试,如果app2这些都会提示这个错误,那有可能是GCC的问题,楼主可以换一个试试
HonryZZ 2010-11-02
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 zhutianjin4355255 的回复:]
app1Main.c编译时需要链接什么.h文件不?
[/Quote]
不需要的..这个文件很简单..只是想学习一下makefile..呵呵..所以就没写C代码..
#include <stdio.h>

int main()
{
return 0;
}
zhutianjin4355255 2010-11-02
  • 打赏
  • 举报
回复
app1Main.c编译时需要链接什么.h文件不?
HonryZZ 2010-11-02
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zhutianjin4355255 的回复:]
app1Main.obj 这个文件需要依赖什么,楼主检查下
[/Quote]

首先要构建目标: app1Main.obj吧..
根据后缀规则, make应该由app1Main.obj 推导出这个目标的依赖时app1Main.c吧, 然后在根目录查找没有找到该C文件..那么应该到我设置的vpath中去查找该文件呀..如果去找了是应该找到的..可是现在好像发觉没动静儿...
zhutianjin4355255 2010-11-02
  • 打赏
  • 举报
回复
app1Main.obj 这个文件需要依赖什么,楼主检查下
HonryZZ 2010-11-02
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 manytao 的回复:]
lz检查一下你的顺序
[/Quote]
啥顺序来着..呵呵..刚看了几天makefile..好多都不太明白..~~~
manytao 2010-11-02
  • 打赏
  • 举报
回复
lz检查一下你的顺序
hawk198 2010-11-02
  • 打赏
  • 举报
回复
最好是为每个target写一条规则,简单,也不容易忽略
hawk198 2010-11-02
  • 打赏
  • 举报
回复
$(OBJ_PATH)app1Main.obj没有生成规则

vpath %.c $(RSC1_PATH) $(RSC2_PATH) $(RSC3_PATH) $(RSC4_PATH) $(RSC5_PATH)
vpath %.obj $(OBJ_PATH)

这样写貌似没生效

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧