以下基于官网上最新的3.04版本(http://www.winnermicro.com/html/1/156/158/497.html)的SDK WM_SDK_W60X_G3.04.00 为例来详细说明。

标准开发包支持KEIL编译和GCC编译两种编译方式,通常来说,开发者使用前者的较多,包括我自己。因为它比较方便,简单,添加自己的C文件时,只需要在项目里右键添加到组即可,再在工程选项里设置一下自己的头文件的目录,就可以进行编译。如下图所示,分别是向工程中添加文件及设置头文件路径的操作步骤。

以下主要介绍一下在使用GCC编译工程时,如何向GCC工程中添加自己的C文件;

SDK根目录结构如下图所示:

现在我在App目录下添加几个文件,并新建一个文件夹,同时在文件夹内存放几个自己写的应用文件,如下图:

若要将以上文件加入GCC工程,可按以下步骤实现:

1,编写dir_demo目录下的makefile,内容如下:

#/**************************************************************************
# * Kevin 2014-02-24                                                       *
# **************************************************************************/#---------------------------------------------------------------------------
# Constant Variable definition
#---------------------------------------------------------------------------ifeq ($(COMPILER_OS_CYGWIN),1)
TOPDIR=../../
endifinclude $(TOPDIR)/Tools/toolchain.def#---------------------------------------------------------------------------
# Target definition (User)
#---------------------------------------------------------------------------
GOAL  = $(LIB_DIR)/wmdir_demo.$(LIBTYPE)#---------------------------------------------------------------------------
# Source section (User)
#---------------------------------------------------------------------------
ASM_SRC         +=
C_SRC           += file_1.c
C_SRC           += file_2.c
#---------------------------------------------------------------------------
# Implicit rules
#---------------------------------------------------------------------------
.c.o:$(CC) $(CFLAGS) -c -o $*.o $< $(INCLUDES).s.o:$(ASM) $(ASMFLAGS) -c -o $*.o $< $(INCLUDES)#---------------------------------------------------------------------------
# Explicit ruls
#---------------------------------------------------------------------------
OBJ_FILES   = $(C_SRC:%.c=%.o) $(ASM_SRC:%.s=%.o)all: $(GOAL)$(GOAL): $(OBJ_FILES)$(AR) $(ARFLAGS) $@ $(OBJ_FILES).PHONY: clean
clean:$(RM) -f $(GOAL)$(RM) -f $(OBJ_FILES:.o=.d) $(OBJ_FILES)

2,修改Tools/GNU/目录下的makefile,修改内容如下,

3,修改Tools目录下subdir.mk文件;

4,修改Tools目录下toolchain.def文件;

5,完成以上修改后,就修改成功了。然后就可以到GNU目录下执行make命令来编译GCC工程了;

在联盛德W600 SDK上添加C文件并实现GCC编译相关推荐

  1. 联盛德 HLK-W806 (八): 4线SPI驱动SSD1306/SSD1315 128x64 OLED液晶屏

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  2. 联盛德 HLK-W806 (五): W801开发板上手报告

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  3. 联盛德 HLK-W806 (六): I2C驱动SSD1306 128x64 OLED液晶屏

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  4. 联盛德 HLK-W806 (十一): 软件SPI和硬件SPI驱动ST7567液晶LCD

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  5. 联盛德 HLK-W806 (九): 软件SPI和硬件SPI驱动ST7789V液晶LCD

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  6. 联盛德 HLK-W801(三):在SDK粥中盛出UART

    联盛德 HLK-W801的UART的使用 这sdk有些乱,有的外设历程也乱,其中这个uart的相关api就挺乱的 文章目录 联盛德 HLK-W801的UART的使用 1. 开发环境 2. 使用sdk初 ...

  7. 联盛德 HLK-W801(二):SDK启动分析

    联盛德 HLK-W801(二):SDK启动分析 声明:这是学习的时候记录的笔记,可能存在错误,另外我有一篇针对这个开发板打开串口复位问题进行了硬件修改,相关问题请看我的另一篇博客 文章目录 联盛德 H ...

  8. 联盛德W800开发板|SDK|make menuconfig|工具链|本地命令行编译|Windows11|msys|清华源|(4)、联盛德W800开发板命令行编译指南

    目录 W800 芯片介绍: W800开发板 主要接口如下: 1 概述 2 准备工作 3.SDK目录结构如下: 4 W800编译固件编译 4.1 安装MSYS到本地: 4.2增加国内软件更新源 ​编辑4 ...

  9. W80X|联盛德|nulllab空想实验室|Arduino适配|学习(6):w80x_arduino环境安装

    文章目录 概述 官方推荐安装方法(实测未成功) readme中的安装步骤: 手动安装方法: clone项目至本地 手动新建w80x_arduino管理器存放目录 w80x_arduino开发进展 说明 ...

最新文章

  1. python上海培训哪里比较好-上海python培训哪家好 Python需要多久学会
  2. session过期重新登陆_深入分析Session和Cookie-前端面试题
  3. 刷题bingo挑战赛1
  4. 增加堆大小–谨防眼镜蛇效应
  5. 基于FPGA的红外遥控解码与PC串口通信
  6. `object.__new__`应用
  7. 关于flink的时间处理不正确的现象复现原因分析
  8. python和java选择哪个-观点|Java 与 Python:你应该选择哪个?
  9. js实现类似微博根据发布时间,给信息加上“刚刚”“一分钟前”“一小时前”
  10. python mp4提取音频,利用python提取视频中的音频
  11. 微信公众号--素材管理
  12. 猜数字游戏:随机生成一个1-100之间的数据,提示用户猜测,猜大提示过大,猜小提示过小,直到猜中结束游戏
  13. 2020年国家扶贫日“三产联动扶贫论坛”在京召开,杭州复杂美科技有限公
  14. 怎么把ppt文字大小设置一致_学会这个方法,轻松制作海报级别的霓虹灯PPT!
  15. Go语言处理Windows系统的图标ICO文件(中)
  16. 个人总结-网络安全学习和CTF必不可少的一些网站
  17. Docker、Docker、Docker
  18. 反常积分(Anomalous Integrals)
  19. win 8 store app 圆通快递查询 隐私声明
  20. 二叉排序树查找成功和不成功的平均查找长度

热门文章

  1. Syn Bot /OSCOVA 快速回复(11)
  2. 对接口运用扩展方法 Applying Extension Methods to an Interface 精通ASP-NET-MVC-5-弗瑞曼 Listing 4-15...
  3. 内核调试和系统调用劫持
  4. hdu 3613 扩展kmp+回文串
  5. Transaction And Lock--事务中使用return会回滚事务吗?
  6. struts2前台获取setattribute为空指针异常_告诉你,这样设计 Java 异常更优雅,更牛逼!...
  7. html post后404,为什么在vue-cli脚手架下启动的服务器POST返回404呢?WebStorm启动没有问题?...
  8. Ardino基础教程 17_四位数码管
  9. STM32 电机教程 28 - ST MCLIB实战之 位置闭环控制
  10. tortoisegit 常见错误disconnected no supported authentication methods available(server sent: publickey)