首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux】初步使用makefile

1 快速使用 会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力 一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译...make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make。...可见,makefile都成为了一种在工程方面的编译方法。...make是一条命令,makefile是一个文件,两个搭配使用,完成项目自动化构建 1.1 认识makefile makefile 可以实现自动化构建代码工程 首先 来认识一下make makefile...1.2 使用makefile 我们首先编写一个简单的makefile文件 我们使用make 命令来执行 然后我们就成果得到了可执行程序mytest,并可以成功执行。

11210
您找到你想要的搜索结果了吗?
是的
没有找到

Linux 开发 | 学习 Makefile

@(linux 编程)[开发技能, 工具使用] What is GNU Make Make 是控制工程中通过源码生成可执行文件和其他相关文件的工具。...工作流程 Make 读取当前目录下命名为 GNUmakefile/Makefile/makefile 或者 -f 直接指定的所有规则文件。...Makefile 嵌套 对于一个比较大的工程,不同模块分类在不同目录,分别用一个 Makefile 进行管理,模块化编译,方便工程维护和保证 Makefile 的简洁。...例如,子目录 subdir 下有一个 Makefile 描述该目录模块的编译规则, 那么总控 Makefile 中调用子目录 Makefile 可以这么写: subsystem : cd subdir...:= 是覆盖之前的值(类似C中的 = ) 变量的值决定于它在makefile中的位置,而不是整个makefile展开后的最终值。

5.3K10

LinuxMakefile文件详解

注意事项 空格问题: Makefile 使用 Tab 键而不是空格来缩进规则。 文件依赖: Makefile 的核心是文件之间的依赖关系,确保每个目标都依赖于正确的文件。...Makefile 是一个非常强大的工具,可以用于管理复杂的项目结构。以上示例是一个简单的入门级别的 Makefile,实际项目中可能会包含更多的配置和规则。 5....Makefile 规则 Makefile 通常包含规则(rules),规则描述了如何生成一个或多个目标文件。...9. include 指令 Makefile 可以包含其他 Makefile,使用 include 指令。这样可以将 Makefile 分成多个模块,提高可维护性。...这个 Makefile 包含了 all(默认目标)、clean(清理目标)等规则。 19. 函数 Makefile 支持一些内建的函数,用于处理字符串、路径等。

19510

linux下,Makefile是啥??

为什么要学习MakefileLinux环境下的程序员如果不会使用GNU make来构建和管理自己的工程,应该不能算是一个合格的专业程序员,至少不能称得上是Unix程序员。...在Linux(unix)环境下使用GNU的make工具能够比较容易的构建一个属于你自己的工程,整个工程的编译只需要一个命令就可以完成编译、连接以至于最后的执行。...Makefile的命名规则 默认的情况下,make命令会在当前目录下按顺序找寻文件名为“GNUmakefile”、 “makefile”、“Makefile”的文件,在这三个文件名中,最好使用“Makefile...有另外一些make只对全小写的“makefile”文件名敏感,大多数的make都支持“makefile”和“Makefile”这两种默认文件名。...Makefile也可以为其他名字,比如makefile.linux,但你需要使用make的参数(-f or --file)制定对应的文件,例如: make -f makefile.linux Makefile

1.1K20

linux项目构建工具——makefile

一、 makefile 在多文件中使用 1.创建文件 先创建三个文件 test.h mytest.c main.c 文件 [yzq@VM-8-8-centos mk]$ touch test.h...hello world hello world 正常生成是利用 gcc mytest.c main.c -o test 生成一个可执行程序 test ./ test产生 hello world 6. makefile...的使用 首先使用 vim makefile (这里若是没有创建,则会自动创建一个文件)进入vim编辑器 test: mytest.c main.c gcc $^ -o $@ .PHONY:...mytest.c main.c -o test 这句话整体作为一个依赖方法 特别注意:在gcc 前面加上 TAB .PHONY:clean clean: rm -f test .PHONY可以看作是makefile...使用 make clean 的原因 makefile是一个脚本,默认识别是从上往下,只会执行一个可执行,所以想要跳过项目的创建,就要加上对应的名字

2K10

LinuxMakefile的学习笔记以及多级目录下Makefile的编写

Makefile文件一般和项目的其他源文件放在同一个目录下。在机器上可以同时存在许多不同的makefile文件,如果一个大项目,可以用多个不同的makefile文件来分别管理项目的不同部分。...如果未使用这个选项,标准版的make命令将优先在当前命令下查找名称为makefile的文件,如果不存在名称makefile的文件,则开始查找名为Makefile的文件。...三、Makefile中的宏 可以通过KEY=value在makefile中定义宏。...)执行完成后返回到当前目录继续读入、执行当前的Makefile( 顶级目录下Makefile)。...makefile打印出来的信息更加的直观和人性化,可以适当的添加一些提示信息,简单的更改的makefile如下: ifeq ($(t), 0) TOOL= else TOOL=arm-none-linux-gnueabi

4.8K10

Linux之make和makefile及其拓展

文章目录 make和makefile 基础知识 make/makefile的使用 伪目标 三个时间 推导规则 小程序进度条 缓冲区问题 倒计时程序 进度条 make和makefile 基础知识...makefile制定了一系列的规则来指定。 makefile带来的好处就是自动化编译,一旦写好这个文件,只需要一条make命令,整个工程就能自动完成编译,极大的提高了效率。...make是一个命令,makefile是一个文件 make/makefile的使用 系统本身并没有makefile,需要我们自己创建makefile文件(也可以叫Makefile)。...该文件中主要写依赖关系和依赖方法: 注意: 有了makefile文件,make命令才能派上用场,保存退出makefile文件后在终端输入make命令就能完成自动编译 这个时候你可能有一个疑问:...makefile默认只执行第一个依赖方法,如果你要执行clean可以使用make+依赖关系 那么为什么要有依赖关系和依赖方法?

3.7K00

Linux 下的make命令与Makefile

概述 博客内容包含linux下make命令的使用与makefile的书写规则等,希望通过本文档使读者对make命令makefile文件有进一步了解,由于鄙人经验学识有限文档中会有描述不准确以及理解偏差,...fythons@sina.com 从一只猫说起hello kitty linux系统中的make命令与makefile文件 make与makefilelinux系统中make是一个非常重要的编译命令...make命令隐藏了什么 linux 编译hello_kitty 只需要简单的make hello_kitty 上述过程可分解为四部分,预处理(Propressing),编译(Compilation),...指定makefile GNU make找寻默认的Makefile的规则是在当前目录下依次找三个文件“GNUmakefile”、“makefile”和“Makefile”。...m: 也就是makefile,输出make读取makefile,更新makefile,执行makefile的信息。 -d 相当于“–debug=a”。

10.1K20

Linux makefile 教程 非常详细,且易懂

最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。 于是google到了以下这篇文章。通俗易懂。...后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比较好理解。能让人看懂就是好文章。...make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make。...当然,你可以使用别的文件名来书写Makefile,比如:“Make.Linux”,“Make.Solaris”,“Make.AIX”等,如果要指定特定的Makefile,你可以使用make的“-f”和“...、Solaris、HP-UX、AIX和Alpha下使用,Linux和Solaris下更多一点。

4.2K20

makefile

前言 这几天的实验让我觉得有必要学习一下makefile 参考博客:博客 会不会写makefile,从一个侧面说明了一个人是否具有完成大型工程的能力 makefile带来的好处是自动化编译 规则...上述make的工作方式 make寻找名为makefile或者Makefile的文件 寻找第一个目标文件,上述例子edit为最终的目标文件 如果edit文件不存在,那么make会寻找edit后的.o文件,...的文件系统 如果你不想使用makefile或者Makefile的文件名,可以用make -f file,file是你的文件名。...makefile中包含其他makefile的指令如同c++ 一样: -include foo.make a.mk b.mk c.mk e.mk f.mk 减号仍然表示不管怎样报错都继续执行下去,上面的命令可以采用部分正则规则简化...: -include foo,make *,mk $(bar) 工作方式 读入所有的Makefile

1K20

makefile 基础、进阶及常用 makefile

联合编译 makefile 上面的例子只是一个最简单的 makefile 的使用方法,但实际项目里面不可能只有一个文件,实际可能是多个 .c .h 组成,像这样的项目,我们该如何通过 makefile...gcc main.o add.o sub.o mul.o -o app makefile 变量 接下来我们引入 makefile 变量机制,来修改一下上面的 makefile 文件。...makefile 自动变量 makefile 中有一些预定义的变量,你可以理解它像是 C 语言中的一些关键字,分别有不同的意义,我们列举几个常用的自动变量(其他还有很多),通过上面的 makefile...makefile 中的 all 因为 makefile 的执行流程是找到第一个目标作为最终生成的目标,如果顺序错乱了,makefile 就可能报错,all 方法就是解决这个问题而存在的,并且,all 方法可以让一个...至此 makefile 的功能说明到此为止一,下面就是收集的一些常用做测试用的 makefile 代码。

29910

Linux嵌入式开发——Makefile基本语法

文章目录 Linux嵌入式开发——Makefile基本语法 一、Makefile 规则格式 二、Makefile 变量 2.1、赋值符“=” 2.2、赋值符“:=” 2.3、赋值符“?...=” 2.4、变量追加“+=” 三、Makefile 模式规则 四、Makefile 自动化变量 五、Makefile 伪目标 Linux嵌入式开发——Makefile基本语法 接下来我们来详细介绍一下基本的...Makefile语法,以便于我们以后使用make工具。...一、Makefile 规则格式 Makefile文件里面其实就是由一系列的规则组成的,所以我们掌握这些规则格式非常重要,这些规则格式如下: 目标... : 依赖文件集合......二、Makefile 变量 接下来呢,我们要介绍一下Makefile里面的变量,Makefile不同于C语言,变量有许多类型,比如 int、char 等各种类型,Makefile 中的变量都是字符串。

1.4K20

Linux工具入门:make工具与Makefile文件

make工具通过一个称为Makefile的文件来完成并自动维护编译工作,Makefile文件描述了整个工程的编译、连接规则。 2. Makefile文件 Makefile描述了整个工程的编译连接规则。...Makefile的基本规则为: TARGET...: DEPENDENCIES... COMMAND ......如果DEPENDENCIES中有一个或多个文件更新的话,COMMAND就要执行,这就是Makefile最核心的内容。 3....也可以生成指定的目标: $ make add.o 【指定只生成add.o文件】 Makefile文件的名字不一定得命名为“Makefile”或"makefile",使用其他名字也是可以的。...Makefile 自动化变量 从上面的Makefile文件我们发现一些问题:有时候目标文件的依赖列表过长,或者命令重复书写。利用Makefile自动化变量可以解决这个问题。

3.4K40

Linux工具入门:make工具与Makefile文件

make工具通过一个称为Makefile的文件来完成并自动维护编译工作,Makefile文件描述了整个工程的编译、连接规则。 回到顶部 2....Makefile文件 Makefile描述了整个工程的编译连接规则。Makefile的基本规则为: TARGET...: DEPENDENCIES... COMMAND ......如果DEPENDENCIES中有一个或多个文件更新的话,COMMAND就要执行,这就是Makefile最核心的内容。 回到顶部 3....也可以生成指定的目标: $ make add.o 【指定只生成add.o文件】 Makefile文件的名字不一定得命名为“Makefile”或"makefile",使用其他名字也是可以的。...Makefile 自动化变量 从上面的Makefile文件我们发现一些问题:有时候目标文件的依赖列表过长,或者命令重复书写。利用Makefile自动化变量可以解决这个问题。

3K40
领券