+ -
当前位置:首页 → 问答吧 → 这样的makefile为什么不对呢

这样的makefile为什么不对呢

时间:2010-08-10

来源:互联网

  1. #Makefile for systems with GNU tools
  2. CC = gcc
  3. CFLAGS = -O2 -Wall #-Wshadow
  4. OBJS = myftpserver.o err_msg.o

  5. ftpserver:
  6.     $(CC) -o myftpserver $(OBJS)
  7. #.c.o:
  8. #   $(CC) -std=c99 $(CFLAGS) -c $*.c
  9. myftpserver.o : myftpserver.c myftpserver.h
  10.     $(CC) -c -std=gnu99 $(CFLAGS) myftpserver.c
  11. err_msg.o : err_msg.c err_msg.h
  12.     $(CC) -c -std=gnu99 $(CFLAGS) err_msg.c


  13. clean:
  14.     rm -f *.o *.swp ftpserver
复制代码
错误提示:
gcc -o myftpserver myftpserver.o err_msg.o
gcc: myftpserver.o: No such file or directory
gcc: err_msg.o: No such file or directory
gcc: no input files
make: *** [ftpserver] Error 1
但是当前目录下存在, 以下文件:
listar@listar-desktop:~/myftpserver$ ll
total 1044
-rw-r--r-- 1 listar listar 188416 2010-08-10 00:26 cscope.in.out
-rw-r--r-- 1 listar listar 481957 2010-08-10 00:26 cscope.out
-rw-r--r-- 1 listar listar 330552 2010-08-10 00:26 cscope.po.out
-rw-r--r-- 1 listar listar   1221 2010-08-10 01:38 err_msg.c
-rw-r--r-- 1 listar listar    235 2010-08-10 00:37 err_msg.h
-rw-r--r-- 1 listar listar    390 2010-08-10 03:11 Makefile
-rw-r--r-- 1 listar listar  20138 2010-08-10 01:50 myftpserver.c
-rw-r--r-- 1 listar listar   1795 2010-08-03 20:28 myftpserver.h
-rw-r--r-- 1 listar listar   7539 2010-07-25 20:37 Session.vim
-rw-r--r-- 1 listar listar   7856 2010-08-09 18:39 tags
drwxr-xr-x 2 listar listar   4096 2010-08-10 02:56 test
什么问题呢?
makefile还不是很熟。 请各位帮忙看下 小弟感谢!

作者: zhanglistar   发布时间: 2010-08-10

第六行:
  1. ftpserver:
复制代码
改为:
  1. ftpserver: $(OBJS)
复制代码
依赖关系是一套完整的依赖链,哪里断了哪里就会失败。

作者: langue   发布时间: 2010-08-10

回复 langue


    奥,对 哈哈谢谢兄台

作者: zhanglistar   发布时间: 2010-08-10