在windows环境下用vscode配置gcc编译代码

本文讲述了作者如何从VisualStudio转向Linux环境,通过安装VSCode和mingw,配置Makefile,解决list.h编译问题,实现跨平台代码编译、调试和清理过程。教程详细介绍了Makefile的编写和调试技巧。
摘要由CSDN通过智能技术生成

本来我之前很喜欢用visual stdudio写代码的, 这样在电脑上能够运行的代码,放到单片机上也是可以运行的.但是之前在使用linux中的list.h的时候, 在visual studio编译不过. 因此经过找网上的各种资源,最终整合了这篇文章

1.首先安装vscode.

2.安装mingw

        以上网上有很多人讲关于这个环境的配置,照着做都能够成功

3.编写简单的makefile

        可以看看B站李慧芹老师的视频第70个视频,关于makefile的编写, 有那点基础够目前用的了.但是要注意优点不同: 要将rm换位del, 目前我还不会分目录, 但是基本够用了, 我们如果需要添加xxx.c, 则在这个makfile文件里面添加xxx.o即可

OBJS=main.o bsp_led.o
CC=gcc						
CFLAGS+=-c -Wall -g				

test:$(OBJS)			
	$(CC) $^ -o $@		
%.o:%.c					
	$(CC)  $^ $(CFLAGS) -o $@	

clean:
	del *.o *.exe

编译: mingw32-make

清理: mingw32-make clean

运行可执行文件:.\test.exe

调试的时候先别在程序里写while(1), 否则终端就卡着了,就只有删除终端, 然后重新打开新的终端了.当然也可以调试, 打断点.单步调试.

下面这个makefile就比较通用了, 可以完全不修改直接用于工程中了, 但是唯一不足的是所有的.c和.h还是在同一级目录.所有的.o和.exe文件都在obj文件夹下, 并且这个obj文件夹也是makefile自动生成的.

.PHONY: all clean

MKDIR = mkdir
RM = del
RMFLAGS = /q
CC = gcc
 
DIR_OBJS = obj
DIR_EXES = obj
DIRS = $(DIR_OBJS) $(DIR_EXES)
EXE = $(DIR_EXES)/test
SRCS = $(wildcard *.c)
OBJS = $(SRCS:.c=.o)
OBJS := $(addprefix $(DIR_OBJS)/, $(OBJS))
 
all: $(DIRS) $(EXE)
 
$(DIRS):
	$(MKDIR) $@
$(EXE): $(OBJS)
	$(CC) -o $@ $^
$(DIR_OBJS)/%.o: %.c
	$(CC) -o $@ -c $^
 
clean:
	$(RM) $(RMFLAGS) $(DIRS) $(DIR_EXES)

  • 8
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

入门->放弃

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值