通过 Makefile 对 C 语言进行编译并运行
通过 Makefile 对 C 语言进行编译并运行
Makefile 介绍
Makefile 可以简单的认为是一个工程文件的编译规则,描述了整个工程的编译和链接等规则。其中包含了那些文件需要编译,那些文件不需要编译,那些文件需要先编译,那些文件需要后编译,那些文件需要重建等等。编译整个工程需要涉及到的,在Makefile 中都可以进行描述。换句话说,Makefile 可以使得我们的项目工程的编译变得自动化,不需要每次都手动输入一堆源文件和参数。
Makefile 文件编写规则
target : prerequisites
command
target是一个目标文件,可以是Object File,也可以是执行文件。还可以是一个标签(Label),对于标签这种特性,在后续的“伪目标”章节中会有叙述。
prerequisites是需要生成那个target所需要的文件或是目标。
command也就是make需要执行的命令。(任意的Shell命令)
Makefile 文件格式与实例
main: main.o sub1.o
gcc main.o sub1.o -o main
main.o: main.c
gcc -c main.c -o mian.o
sub1.o: sub1.c
gcc -c sub1.c -o sub1.o
clean:
rm main *.o
使用 Makefile 对 C 语言进行编译,需要有 .h 头文件对函数进行定义
Makefile 编译并运行 C 语言源文件
总结
Makefile 通过指定的 Makefile 文件,让整个编译过程变得更加简单,我们只需要在 Makefile 文件中补充完全我们需要的文件,通过以下指令:
sudo make
即可简单快捷的编译整个文件,总体来说,就相当于在 Windows 环境下使用 CMakeList 对 C 语言进行编译
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?