简单的makefile文件编写

article/2025/9/26 19:00:46

习惯了windows下ide创建工程已经代码的编写,然后一键运行,很简单,因为很多事ide都帮我们做了,但是linux下不一样,需要手动编译,执行一条条的命令,一般工程都是由于很多文件组成的,比如c++有很多.h和.cpp文件,难道编译的话需要我们一个一个手动编译?比如这样:

g++ main.cpp fun1.cpp fun2.cpp -o main

如果有几百个几千个呢?在终端敲命令岂不是累死人,万一哪个文件名写错了还得重新敲,有什么办法呢?当然有,编写makefile文件,下面就来以简单的例子学会写简单的makefile文件
首先,新建一个project文件夹,里面新建makefieDemo文件夹,然后在里面建立.cpp和.h文件
在这里插入图片描述写好文件后
在这里插入图片描述保存并退出
现在目录下有3个文件
在这里插入图片描述可以写makefile文件了,终端执行vim makefile,就可以编写了,注意,一般makefile文件名是makefile或者Makefile,千万不要写成makeFile!!!!
因为这里在.h文件里就定义了函数,而不是只在.h声明,然后再.cpp文件定义,所以这里只有一个cpp文件,makefile文件可以这样写
在这里插入图片描述#表示注释,首先写要生成的可执行文件的名字main,然后冒号,main由main.cpp得来的,然后换行,tab,下面是命令,然后保存退出
终端输入make,就会产生可执行文件main,输入./main即可执行
在这里插入图片描述

我这里比较省事,主要是为了学习makefile文件的编写
再详细点,如下:
标准的工程下都会有很多对应.h的.cpp文件,以及一个main.cpp文件
在这里插入图片描述写好后工程目录一共这么多文件
在这里插入图片描述现在vim makefile重新编写makefile文件
在这里插入图片描述格式差不多的,由上往下一步一步递归,main可执行文件由源文件main.cpp,目标文件fun1.o,fun2.o得来,然后目标文件又由相应的cpp文件得来
保存退出,执行make命令
在这里插入图片描述成功
必须说一下,第一次在linux环境下编译c++工程,而且第一次用vim进行多文件编写,难免不适应,所以.h,.cpp文件容易写错,前面的图片中其实.h或者.cpp文件都可能写错了,不想vs ide之类的有错误提示,在写代码的时候就可以发现错误,linux和windows下写代码有很大的不同,刚开始可能会不怎么习惯,多练练就好


http://chatgpt.dhexx.cn/article/Kjco8AnR.shtml

相关文章

如何编写一个简单的Makefile文件

在c语言学习的初级阶段,我们所写的代码量较少,分装的文件也很少,直接使用gcc编译便能满足我们的大部分需求,然而随着我们学习的深入,代码量越来越多,已经开始做一些工程项目了,项目中包含多个c文…

Linux下编写makefile文件

首先在vi编辑器下编写add.c #include "test.h" #include <stdio.h> int add(int a, int b) { return a b; } int main() { printf(" 2 3 %d\n", add(2, 3)); printf(" 5 - 3 %d\n", sub(5, 3)); return 1; } 再编写sub.c…

如何创建 makefile文件

在学习 任哲《嵌入式实时操作系统 uCOS-II 原理及应用》中如何创建makefile文件呢&#xff1f; 1&#xff0c;创建一个名为makefile的文件&#xff08;取消扩展名&#xff09; 输入下面命令示例内容 target1: md 11 target2: md 22 target3: rd 11 rd 22 2&am…

Makefile文件的简单编写

参考&#xff1a; MakeFile文件是什么——内容、工作原理、作用、使用 嵌入式操作系统linux篇&#xff08;书&#xff09; Makefile伪目标 GNU make中文手册.pdf 在嵌入式开发中&#xff0c;一个工程中的源文件是非常多的&#xff0c;如果一个个编译会很麻烦&#xff0c;Makefi…

带你去了解什么是makefile文件

GNU make命令是用来控制从源文件生成可执行文件或非可执行文件的方式。那么make命令又是通过makefile文件来控制了。所以了解makefile文件就显得很有必要了。 makefile文件由许多规则组成&#xff0c;这些规则的形式一般是这样的&#xff1a; 目标 ... : 先决条件 ...命令目标…

linux下制作makefile文件

1.最简单的一种当然也是最麻烦的一种(makefile 中的代码如下&#xff0c;其中hello.cpp是文件名&#xff0c;hello是编译后的命名。使用方法是直接输入 make) hello:hello.cpp …

编写 Makefile文件 (一)

参考&#xff1a;《linux程序设计&#xff08;第四版&#xff09;》 本文的编写从简单到复杂&#xff0c;一步一步完成Makefile文件的编写和完善。首先看一下我们的程序有哪些文件&#xff1a; 文件内的程序也很简单&#xff0c;就是输出该文件已经被调用&#xff0c;代码如下…

如何编写makefile文件

文章目录 1. makefile文件的作用2. makefile文件编写格式C代码举例编写makefile文件 3. makefile编写习惯优化使用中间文件定义变量自动变量通配符假想目标 1. makefile文件的作用 在很多的生产环境中&#xff0c;一个项目的运行往往要有很多源程序文件生成最终的可执行文件&am…

Linux下makefile文件的编写

在学习如何编写makefile文件之前&#xff0c;我们首先需要了解什么是makefile文件&#xff1a; makefile描述了整个工程的编译和链接等规则。它指明了哪些文件需要先编译&#xff0c;哪写文件需要后编译&#xff0c;哪些文件需要重新编译&#xff0c;甚至进行更复杂的功能操作。…

Makefile文件详解一(怎么在Windows下使用Makefile文件)

前言&#xff1a;如果熟悉在Linux开发的话&#xff0c;肯定知道Makefile文件的用处&#xff0c;它给我们带来很多的便利。在Linux系统下并不会像Windows那么多开发工具&#xff0c;在Windows下&#xff0c;只要在开发工具上点击一个按钮&#xff0c;就能将工程的所有源码进行编…

makefile文件编写

makefile文件用于管理和组织代码工程的编译和链接&#xff0c;其不是可执行文件&#xff0c;其被make工具解析并完成相关动作&#xff0c;下面笔者将介绍makefile中常用的一些语法说明&#xff1a; 1、文件包含&#xff1a; 语法&#xff1a;include 文件名 作用&#xff1a;…

make中makefile文件的创建和使用

Makefile文件就是一种定义规则的文件&#xff0c;规则不同但格式基本相同&#xff0c;如图 一个makefile中有多个规则&#xff0c;但最终形成一个makefile文件&#xff0c;且只有一个终极目标&#xff0c;第一行就是终极目标。 格式: 1.目标文件&#xff1a;&#xff08;如mai…

【Linux基础】如何编写Makefile文件?

文章目录 前言一、make工具简介1.什么是make?2.如何安装make? 二、编写Makefile文件1.文件组成2.工作原理3.Makefile文件优点4.单级目录下的Makefile文件编写5.多级目录下的Makefile文件编写 总结 前言 我们刚开始在Linux系统下进行编程时&#xff0c;采用的编译方法为&#…

从0开始教你编写Makefile文件

目录 编写Makefile第一步&#xff0c;了解什么是Makefile&#xff1f; 编写Makefile第二步&#xff0c;明白编译链接过程 编写Makefile第三步&#xff0c;实现简单的Makefile(生成单个可执行文件) 解释一下一个简简单单的make都干了什么&#xff1f; 编写Makefile第四步&am…

C语言makefile文件

文章目录 一、makefile的编写二、make命令三、makefile文件中的变量四、应用经验五、课后作业六、版权声明 在软件的工程中的源文件是很多的&#xff0c;其按照类型、功能、模块分别放在若干个目录和文件中&#xff0c;哪些文件需要编译&#xff0c;那些文件需要后编译&#xf…

【Linux】Makefile文件

1.Makefile的作用 Makefile文件定义了一系列的规则来指定哪些文件需要先编译&#xff0c;哪些文件需要后编译&#xff0c;哪些文件需要重新编译&#xff0c;可以实现自动化编译&#xff0c;一旦写好&#xff0c;只需要一个make命令&#xff0c;整个工程完全自动编译&#xff0…

计算一幅图像的信噪比

计算一幅图像的信噪比 适用情况计算步骤附matlab代码example计算结果计算峰值信噪比 大家好&#xff0c;这是我两年前写的一篇博客修正版本&#xff0c;本来打算删掉了&#xff0c;但是阅读量很多&#xff0c;可能对大家会有一点小小的帮助&#xff0c;就重新放上来吧。 适用情…

两种常用的全参考图像质量评价指标——峰值信噪比(PSNR)和结构相似性(SSIM)

原文&#xff1a;https://blog.csdn.net/zjyruobing/article/details/49908979 1.PSNR&#xff08;Peak Signal to Noise Ratio&#xff09;峰值信噪比&#xff1a; MSE表示当前图像X和参考图像Y的均方误差&#xff08;Mean Square Error&#xff09;&#xff0c;H、W分别为图…

图像信噪比的理解

图像的信噪比和图像的清晰度一样&#xff0c;都是衡量图像质量高低的重要指标。图像的信噪比是指视频信号的大小与噪波信号大小的比值&#xff0c;其公式为&#xff1a; S/N&#xff08;信噪比&#xff09; 20 log (信号/噪声)dB信噪比大&#xff0c;图像画面就干净&#xff0…

相机的信噪比

在图像传感器的成像过程中&#xff0c;真实的信号是无法探测到的理想值。在成像过程中理想值被引入了一系列的不确定性&#xff0c;最终形成读出信号也即图像。此过程中的不确定性被统一称为噪声。而信号与噪声的比值被定义为信噪比&#xff08;Signal-to-NoiseRatio, SNR&…