make工程管理器与Makefile

来源:互联网 发布:java简历项目经验实例 编辑:程序博客网 时间:2024/05/22 12:03

相比于gcc命令,通过make工程管理器编译程序则更加高效。GCC提供的Make是半自动编译,因为编译规则是人工编写的程序,将保存在Makefile文件中。Make工程管理器具有以下两个优点:

  1.使用方便。通过命令即可根据Makefile中的编译规则对程序进行编译

  2.调试效率高。make会对每个源文件的时间进行判断,只有被修改过的文件才会进行编译,大大减少了编译工作量


  Makefile的编写

  三项基本内容:

               ·需要生成的目标文件

               ·生成目标文件所需要的以来文件

               ·声称目标文件的编译规则命令行

格式如下:  

  1. target file : depedency file  
  2. cammand  

  1. <span style="font-family:KaiTi_GB2312;">其中command命令行在书写前要按<span style="color:#cc0000;">Tab</span>键</span>  

举例:编译程序有a.c  b.c  b.h

  1. test : a.o b.o  
  2.        cc -o test a.o b.o  
  3. a.o : a.c b.h  
  4.        cc - c a.c  
  5. b.o :b.c  
  6.        cc -c b.c 
  7. 上述只是简单的Makefile文件,如果需要编译的文件比较多,则需要编写总控Makefile文件来对功能子目录下的Mikefile文件进行编译。这时候需要一个scripts目录的Mikefile文件来定义许多变量(相当于c语言的头文件)。

总控Makefile的作用就是进入各个子目录里执行make目录,将所有的.o文件链接成可执行文件;

功能子目录下的Makefile的作用就是将src目录下的.c文件编译成为.o文件

0 0
原创粉丝点击