makefile 遇到问题了,请指教

sh/bash/dash/ksh/zsh等Shell脚本
回复
wnyh
帖子: 54
注册时间: 2011-11-24 9:00

makefile 遇到问题了,请指教

#1

帖子 wnyh » 2015-04-26 15:08

源程序:
main.c


#include <stdio.h>
#include <stdlib.h>
void main()
{
printf("start from zero\n");
}

makefile 语句如下:
obj=main.o
main:
gcc $(obj) -o main
main.o:
gcc -c main.c
clean:
rm *.o
出现的错误是:
gcc main.o -o main
gcc: 错误: main.o:没有那个文件或目录
gcc: 致命错误: 没有输入文件
编译中断。
make: *** [main] 错误 4


请问这是个什么问题??
当我我gcc -c main.c 能得到o文件的。

不知道为啥,到了这里
main.o:
gcc -c main.c
makefile 就不能运行了 请指教。
头像
lainme
论坛版主
帖子: 7805
注册时间: 2008-09-13 19:17
系统: Arch Linux (x86_64)
联系:

Re: makefile 遇到问题了,请指教

#2

帖子 lainme » 2015-04-26 15:25

代码: 全选

obj=main.o
main: $(obj)
        gcc $(obj) -o main
main.o:
        gcc -c main.c
http://wiki.ubuntu.org.cn/%E8%B7%9F%E6% ... 99Makefile
wnyh
帖子: 54
注册时间: 2011-11-24 9:00

Re: makefile 遇到问题了,请指教

#3

帖子 wnyh » 2015-04-26 15:56

lainme 写了:

代码: 全选

obj=main.o
main: $(obj)
        gcc $(obj) -o main
main.o:
        gcc -c main.c
http://wiki.ubuntu.org.cn/%E8%B7%9F%E6% ... 99Makefile
非常感谢。main: $(obj) 我的程序,貌似是main: $(obj) 这句发挥了作用。
头像
the_comer
帖子: 264
注册时间: 2009-07-08 17:33

Re: makefile 遇到问题了,请指教

#4

帖子 the_comer » 2015-04-29 19:35

wnyh 写了:
lainme 写了:

代码: 全选

obj=main.o
main: $(obj)
        gcc $(obj) -o main
main.o:
        gcc -c main.c
http://wiki.ubuntu.org.cn/%E8%B7%9F%E6% ... 99Makefile
非常感谢。main: $(obj) 我的程序,貌似是main: $(obj) 这句发挥了作用。
这里$(obj)就是main.o,main: main.o这句话表明main这个项目依赖main.o这个项目。
回复