理解Linux编译概念make、makefile、cmake

  • 编译概念

    参考附录1、2,计算机作为一个物理存在的硬件,内部内置了很多指令集(依据架构x86、ARM…不同略有不同),CPU只能运行指令集中的指令,至于C语言、Python语言之类的,是人认识但是机器不认识的。

    而指令集恰恰是机器认识,人不认识的。

    将人认识机器不认识的语言(C\Python…)转变成机器认识人不认识的的指令集,这个过程就是编译

    当然,具体实现起来还要进行概念细分,在这里先这么理解。其实整个编程世界,就是各种中转工具的理解。

  • gcc

    Linux内,gcc是一个C语言编译器,可以把C语言代码编译成计算机可以执行的二进制文件。

    当程序只有一个源文件,就可以采用gcc直接编译,但是当程序很大,比如包含了几百个源文件,这时候用gcc一个个编译就是一个愚蠢的行为了。

    make就应需而生。

  • make

    make命令是GNU的工程化编译工具,用于编译众多相互关联的源代码文件,以实现工程化的管理,提高开发效率。

    # 常用选项
    -f:指定“makefile”文件;
    -i:忽略命令执行返回的出错信息;
    -s:沉默模式,在执行之前不输出相应的命令行信息;
    -r:禁止使用build<
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值