博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Makefile简单使用
阅读量:3935 次
发布时间:2019-05-23

本文共 1162 字,大约阅读时间需要 3 分钟。

前言:Makefile是一种常用于编译的脚本语言。它可以更好更方便的管理项目的代码编译,节省时间。 在 Linux(unix )环境下使用GNU 的make工具能够比较容易的构建一个属于你自己的工程,整个工程的编译只需要一个命令就可以完成编译、连接以至于最后的执行。不过这需要我们投入一些时间去完成一个或者多个称之为Makefile 文件的编写。所要完成的Makefile 文件描述了整个工程的编译、连接等规则。

其中包括:工程中的哪些源文件需要编译以及如何编译、需要创建那些库文件以及如何创建这些库文件、如何最后产生我们想要的可执行文件。尽管看起来可能是很复杂的事情,但是为工程编写Makefile 的好处是能够使用一行命令来完成“自动化编译”,一旦提供一个正确的 Makefile。编译整个工程你所要做的唯一的一件事就是在shell 提示符下输入make命令。整个工程完全自动编译,极大提高了效率。

下面是Makefile的通用结构:

#以'#'开头的行表示注释#定义变量VAR,强制赋值为appVAR=test #在VAR之前定义的值后面再追加app这个值,这时该变量值扩展为testapp VAR+=app #如果之前VAR没有被定义,则定义并使用testapp;否则使用之前的值。VAR?=testapp # 第一条目标为总的目标,# 依赖可以是文件(目录)或为其他目标# 动作可以是Linux命令,动作的那一行必须以TAB键开头target: depend1 depend2 depend3 ... [TAB] action1 [TAB ] action2 target1: [TAB] action1 [TAB] action2

默认的情况下,make命令会在当前目录下按顺序找寻文件为“GNUmakefile”、“makefile”、“Makefile”的文件,找到后就解释并执行该文件,如果找不到就提示错误并退出。一般Makeifle文件名我们会用Makefile或makefile,而不会使用GNUmakefile。下面就用我最近学习写的一个简单的Makefile文件

在这里插入图片描述
从上面图片可以看出我需要编译很多个文件,而且命令十分的长,我每次修改代码后都需要重新编译执行,就很复杂麻烦。下面是Makefile的文件内容,真的简单到爆了,但是很实用,如果想了解更深,可以去看看大佬们的博客。

在这里插入图片描述

这里的all是整个Makefile文件的第一个目标,也就是总目标,当我们输入make命令时就是完成这个目标,该目标我定义了两个动作make clean和make run。
Makefile效果:
程序开始编译执行
在这里插入图片描述
删除执行文件
在这里插入图片描述
后序:Makefile只能介绍到这里,本人学到的有限。不过说实话Makefile真的很好用了。

转载地址:http://kfhgn.baihongyu.com/

你可能感兴趣的文章
php-cgi占用cpu资源过高的解决方法
查看>>
php-fpm.conf 相关参数
查看>>
nginx 内部结构分析
查看>>
utuntu常用配置
查看>>
GIT简介
查看>>
GIT客户端
查看>>
GIT系统安装
查看>>
GIT命令行应用
查看>>
php编程技巧
查看>>
款免费的PHP加速器:APC、eAccelerator、XCache比较
查看>>
Nginx 压力测试 /webbench
查看>>
ubuntu访问windows共享文件夹
查看>>
ubuntu用户和用户组管理
查看>>
ubuntu网络配置
查看>>
linux 下 apache php-cgi 安装及配置
查看>>
git 传输
查看>>
Git服务器Gitosis架设指南
查看>>
Ubuntu 10.10下安装nginx + fastcgi + spawn-fcgi + mysql
查看>>
某某 is not in the sudoers file. This incident will be reported.”
查看>>
创建新项目
查看>>