写的简单makefile出错???

wesleyluo 2010-10-03 08:00:18
现在我有一个当前目录,当前目录下又add,sub目录,当前目录下又一个main.c,分别使用到add中的add.c与sub中的sub.c;
现在我写了一个makefile,老是提示出错:

CC = gcc
CFLAGS = -Iadd -Isub
VPATH = add:sub:.
OBJSDIR = .objs
OBJS = add.o sub.o main.o
TARGET = cacu
RM = rm -f
$(TARGET):$(OBJS)
$(CC) -o $(TARGET) $(OBJS) $(CFLAGS)
$(OBJS):%.o:%.c
$(CC) -c $< -o $@
clean:
-$(RM) $(TARGET) *.o

上面的编译时老是提示没有add.o sub.o main.o这个文件???
感觉是其依赖项没有往下扩展生成add.o sub.o main.o 文件???

请教高手。
...全文
81 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
heminrui 2010-10-03
  • 打赏
  • 举报
回复
包含.o文件用函数比较方便吧
wesleyluo 2010-10-03
  • 打赏
  • 举报
回复
谢谢哈。
  • 打赏
  • 举报
回复
LZ试试这个。。。。

CC = gcc
VPATH = add : sub
OBJS = main.o add.o sub.o
TARGET = main

$(TARGET) : $(OBJS)
$(CC) -o $@ $^
%o : %c

clean :
rm -f $(OBJS)

lizhi110110110 2010-10-03
  • 打赏
  • 举报
回复
$(CC) -c $< -o $@ 楼主好好看下
  • 打赏
  • 举报
回复
$(CC) -c $< -o $@ // ?? 你加-o就表示要生成可执行文件了哇??这里明明是要生成目标文件...

69,369

社区成员

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

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