Makefile的编写规则

一、什么是Makefile?

       通俗来说,Makefile就是一个文本形式的文件,其中包含一些规则告诉make编译哪些文件以及怎样编译这些文件。然后通过make命令来逐步执行Makefile定义好的编译规则。
        Makefile带来的最大的好处就是:" 自动化编译 ",一旦写好了Makefile,只需要一个make命令,整个工程完全自动编译,极大的提高了软件项目开发的效率。

二、深入了解程序编译的过程

       编译过程包括四个步骤:
       (1)、 预处理阶段,包括以下步骤:
                     <a>、展开所有代码
                     <b>、执行命令:
                               gcc -E hello.c hello.i
                               即只执行预处理步骤,生成hello.i文件  
                     <c>、处理所有#define,展开所有的宏
                     <d>、处理所有条件编译指令#ifndef、#ifdef、#endif、#if、#elif、#else等
                     <e>、处理#include预编译指令
                     < f>、删除所有的注释//  和 /**/
                     <g>、添加行号以及文件标识,用于调试

       (2)、编译阶段,包括以下步骤:
                     <a>、编译过程就是把预处理完的文件进行一系列的词法分析,语法分析,语义分析及优化后生成相应的汇编代码
                     <b>、执行命令:
                               gcc  -S  hello.i  -o  hello.s
                               将预处理后的文件hello.i 编译,生成hello.s文件

       (3)、汇编阶段,包括以下步骤:
                     <a>、通过汇编器将编译阶段产生的汇编代码转变成机器可以执行的命令,每一个汇编语句几乎都对应一条机器指令
                     <b>、执行命令:
                               gcc  -c  hello.c  -o  hello.o
                               可以将源文件hello.c直接汇编成目标代码文件hello.o(由机器码
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值