当前位置:  技术问答>linux和unix

菜鸟求助makefile相关

    来源: 互联网  发布时间:2016-03-19

    本文导语:  我的目录结构如下     ---Mtest                 |---Makefile                 |---headers                              |---func1.h                              |---func2.h        ...

我的目录结构如下
    ---Mtest
                |---Makefile
                |---headers
                             |---func1.h
                             |---func2.h
                             |---func3.h
                             |---def.h
                |---src
                          |---test.c
                          |---func1.c
                          |---func2.c
                          |---func3.c
Makefile内容如下:
OBJS = test.o func1.o func2.o func3.o
#VPATH = ./headers:./src

vpath %.c src
vpath %.h headers

test:$(OBJS)
cc -o test $(OBJS)

#$(objs):def.h
#test.o:func1.h func2.h func3.h
test.o:def.h func1.h func2.h func3.h
func1.o:func1.h def.h
func2.o:func2.h def.h
func3.o:func3.h def.h

.PHONY:clean
clean:
-rm test $(OBJS) 

make以后总是报错找不到相关的头文件,但是我把*.h *.c放到Makefile的同级目录把vpath变量去掉的时候就可以make过去,是因为刚学到了vpath变量,所以想改变目录结构试着用下vpath,就搞成了上面那样,结果make出错了。
请各位指点迷津
          

|
vpath 是make用的
make可以去找到vpath指示的目录去寻找.o依赖的.c并形成相应的gcc命令进行编译
以func1.o为例。
会调用gcc -c ./src/func1.c -o func1.o

通过 vpath %.h ./headers
和 func1.o:func1.h def.h 
make会在headers目录下的func1.h或def.h更新时,自动重新生成func1.o
但是make不会根据自动给CFLAGS 增加 -I./headers

    
 
 

您可能感兴趣的文章:

  • 菜鸟问题:linux下的makefile...
  • 菜鸟问题makefile为啥老是up to date
  • makefile 的菜鸟问题,在线等候
  • 菜鸟问题:makefile文件怎么用?
  • 菜鸟关于Makefile的凝问
  • 菜鸟问题:怎么新建并打开一个makefile文件(在线等)
  • makefile编写 菜鸟问题 在线等着呢
  • 菜鸟求助,solaris下计算问题求助
  • 菜鸟的问题:求助,关于red hat linux 引导程序
  • 菜鸟求助...设定环境变量
  • 菜鸟求助:如何在 JAVA APPLET 里感知到鼠标的双击消息?
  • 菜鸟求助
  • 菜鸟求助:如何让自己编的小程序,开机自动运行?
  • 50分 求助弱问题-------------------[ 菜鸟的呼声 ]
  • 菜鸟求助,十万火急!
  • 菜鸟求助,我下了一个MozillaFirebird,解压后怎么运行啊?
  • ##菜鸟紧急求助##
  • 菜鸟求助:输入命令回车显示的是乱码?
  • 菜鸟求助超级基础的问题—进制转换
  • 菜鸟求助 SHELL编
  • 菜鸟求助!!!
  • 菜鸟求助:Linux安装完了不能上网,SOS?
  • 菜鸟求助:Linux 应用程序后台启动后关闭窗口程序退出
  • shell脚本编写!菜鸟求助
  • 菜鸟求助linux最最基本的HELLO函数错误
  • 菜鸟求助:linux虚拟机无法mount主机目录
  • 菜鸟求助!有关linux安装问题!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • ----菜菜鸟第三问:-菜鸟菜问:JAVA如何求 根号、开次方? -----
  • 菜鸟问一个关于j2ee的菜鸟问题
  • 怎样从一个菜鸟级的java programer升级到一个菜鸟级的java developer
  • 一个连菜鸟都算不上的菜鸟
  • 菜鸟求问菜鸟问题 ,域名绑定
  • ===菜鸟系列===:写过毕业论文的前辈请进!!!菜鸟散分啦!!!!
  • gcc问题---菜鸟发问之一,老大们帮忙啊!!菜鸟分不多,只好给这点了,对不起!!
  • 菜鸟又来问菜鸟问题了
  • 菜鸟的Linux练习疑问……
  • 菜鸟刚学jsp,还不知道怎么和sql server2000的数据库相连,我已经把odbc配好了,谁能给我一段和数据库相连的并显示所有数据的代码!菜鸟
  • 菜鸟提问,我怎么装redhat7。1
  • 菜鸟写的俄罗斯方块,请多多批评!
  • 小问题,你一定能够帮忙!——菜鸟请求帮忙!!
  • 一个菜鸟的请求: 哪位前辈能给晚辈讲讲“匿名类”
  • ※菜鸟送分之一※ Red Hat Linux 的最高版本是多少?
  • 菜鸟问题:在Java中如何接收从键盘输入的字符串?
  • ★菜鸟问:怎么在RED HAT LINUX7.2中用169上网??
  • 菜鸟提问:包是什么概念?
  • 菜鸟问题~~快点进来拿分
  • 菜鸟菜问题1


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3