windows使用makefile的三种方法

文章介绍了如何在Windows环境下使用makefile进行自动化编译,包括通过命令行、VSCode的makefile插件以及配置VSCode的launch.json和tasks.json文件。首先需要安装mingw和配置gcc路径。方法涵盖了从基础的命令行操作到利用VSCode提升效率的高级用法。
摘要由CSDN通过智能技术生成

windows使用makefile的三种方法

想再在windows上尝试makefile的可以试一试。注意需要下载好mingw、配置好gcc路径,才能成功使用make。
第1种方法只需要命令行,2、3种方法需要借助vscode实现。
当用户编译文件过多的时候,使用makefile可以帮助模块化编译文件,makefile是一个脚本文件,根据规则,来执行相应的脚本文件,实现自动化编译。学习使用makefile可以更深入地学习编译过程。虽然make方法在windows上不是主流方法,除开安装linux虚拟机,也有不少方式在windows上使用make工具。
如下是makefiel脚本和源文件结构:
在这里插入图片描述
具体脚本内容和Makefile内容如下:

'mian.c'
#include "stdio.h"
#include "src_a.h"
#include "src_b.h"

int main()
{
    funca();
    funcb();
    while(1)
    {
        ;
    }
    return 0;
}
#include "stdio.h"
'src_a.c'
void funca()
{
	printf("funca runing!!!\r\n");
}
'src_b.c'
#include "stdio.h"
void funca()
{
	printf("funca runing!!!\r\n");
}
'src_a.h'
#ifndef __SRC_A_H__
#define __SRC_A_H__
void funca();
'src_cb.h'
#endif
#ifndef __SRC_B_H__
#define __SRC_B_H__
void funcb();
#endif
'Makefile'
mian : main.o  src_a.o src_b.o   
	gcc main.o src_a.o src_b.o  -o main
 
main.o : main.c src_a.h src_b.h
	gcc main.c -c -o main.o
 
src_a.o : src_a.c 
	gcc src_a.c -c -o src_a.o
 
src_b.o : src_b.c
	gcc src_b.c -c -o src_b.o
 
.PHONY : clean
clean:
	del *.o -rf

makefile语法介绍
基本语句结构:

----
target :依赖文件--
编译工具(gcc)输出文件所需依赖控制符(-g -c -o)输出文件名
  • -g 可执行程序包含调试信息,目的是为了给 GDB 工具调试程序使用。
  • -o 指定输出文件名,如不指定 -o,默认输出文件名为 a.out,产生执行文件。
  • -c 只编译不链接,产生 .o 文件,不产生可执行文件。

可执行程序包含调试信息,目的是为了给 GDB 工具调试程序使用

1.命令行安装chocolatey,使用choco install 安装make 命令

管理员权限启动cmd.exe,输入以下指令安装chocolatey

@powershell -NoProfile -ExecutionPolicy Bypass -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin

之后就可以用类似linux中apt-get的方式安装各种工具,此处用choco install安装make工具

choco install make

之后找到Makefile路径,使用make命令即可,最后可以运行main.exe
在这里插入图片描述

2.vscode中的makefile tools插件

在扩展中搜索makefile
在这里插入图片描述
安装后在侧边栏中会多出一个图标
在这里插入图片描述
然后配置tool提供的几个选项运行即可
在这里插入图片描述
在这里插入图片描述

3.配置vscode中的launch.json和tasks.json.

  1. launch.json中地址改为cwd地址后加"\main.exe"
  2. launch.json中添加最后一行"prelaunchTask:",名字与tasks.json中label保持一致
  3. tasks.json中command使用make
  4. 注意launch.json中miDebuggerPath是否是gdb
    在这里插入图片描述
    在这里插入图片描述

lauch.json和task.json设置教程
https://blog.csdn.net/fhqlongteng/article/details/127388105
Chocolatey安装make参考
https://juejin.cn/post/7179155710037458981

  • 15
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值