Windows下使用VS Code编译和构建LoRaWan开源代码

作者:luxun12222
版权声明:本文为博主原创文章,转载请标明转载来源( https://blog.csdn.net/luxun12222/article/details/80756354)


最近公司项目需要使用LoRa搭建物联网节点,需要编译和构建LoRaWan的开源代码。今天记录一下Windows下使用VS Code构建LoRaMac-node代码。


1.下载LoRaWan节点端开源代码 LoRaMac-node是LoRaWan开源代码,可以在github上下载到源代码,下载地址: LoRaMac-node
此文档下载的版本是 4.4.1(2018-03-07)版本
解压LoRaMac-node-4.4.1.zip
备注:编译LoRaMac-node项目的路径中不要出现中文,空格,或者目录名过长情况,有可能构建会出现位置异常。
【Windows下使用VS Code编译和构建LoRaWan开源代码】

2.构建LoRaMac-node的先决条件 需要安装CMake

条件:CMake版本 >= 3.6

下载CMake的Windows版本,编写此文档的Windows是x86_64版本,所以下载的是cmake-3.12.0-rc1-win64-x64.msi
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


安装cmake-3.12.0-rc1-win64-x64.msi,并且选择添加CMake环境变量
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


在系统环境变量Path中可以看到
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


安装完成,查看是否安装成功
在cmd输入命令:cmake --version

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片



需要安装GNU ARM-Toolchain工具 访问ARM开发者网站下载GNU ARM嵌入式开发工具。
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


安装gcc-arm-none-eabi-7-2017-q4-major-win32.exe程序。
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


在系统环境变量Path中可以看到

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


安装完成,查看是否安装成功
在cmd输入命令:arm-none-eabi-gcc.exe --version

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片



需要安装MSYS2(需要安装make) MSYS2是Windows下模拟linux工具
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


安装msys2-x86_64-20180531.exe程序,安装完成自动打开MSYS2控制台
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


安装msys的make组件
在msys2控制台输入命令:pacman -S msys/make

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片

测试make是否安装成功
在msys2控制台输入命令:make -v

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片

安装MinGW64的GCC和libs(这里32位系统安装MinGW32,此文档使用的64位系统,所以选择MinGW64的GCC安装)
在msys2控制台输入命令:pacman -S mingw64/mingw-w64-x86_64-gcc 32位系统:pacman -S mingw32/mingw-w64-i686-gcc

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


在msys2控制台输入命令:pacman -S mingw64/mingw-w64-x86_64-gcc-libs 32位系统:pacman -S mingw32/mingw-w64-i686-gcc-libs

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片

测试MinGW64(获得MinGW32)的GCC是否安装成功
在msys2控制台输入命令:gcc -v

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片

添加环境变量:
创建MINGW_HOME变量
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


创建C_INCLUDE_PATH变量
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


创建LIBRARY_PATH变量
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


在Path中添加MinGW的bin目录
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片




需要安装OpenOCD OpenOCD是一个开源的JTAG上位机程序, 配合JTAG调试协议,可以对嵌入式硬件设备进行指令集级别和寄存器级别的调试。

下载OpenOCD非官方二进制包
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


解压openocd-0.10.0.7z到C盘,并且OpenOCD目录必须是C:\openocd(如果不是必须设置环境变量OPENOCD_BIN=openocd的bin目录)


3.使用VS Code构建LoRaMac-node 下载VS Code并安装 VS Code是微软发布的一款免费开源的现代化轻量级代码编辑器,支持几乎所有主流的开发语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比 Diff、GIT 等特性,支持插件扩展,并针对网页开发和云端应用开发做了优化。软件跨平台支持 Win、Mac 以及 Linux。
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片




安装构建必须的VS Code插件 VSCode构建LoRaMac-node代码需要插件C/C++,CMake,CMake Tools,Native Debug
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片

安装完成点击“Reload”重新加载VS Code
在VS Code中打开LoRaMac-node项目目录 Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片

打开完成项目如下图:
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片

配置项目 打开settings.json或者点击菜单“文件”->“首选项”->“设置”,进行编辑
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片

选择“工作区设置”,在“cmake.configureSettings”之后追加
"cmake.preferredGenerators": [ "MinGW Makefiles", "Ninja", "Unix Makefiles" ]

如下图:
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


在“cmake.configureSettings”之中添加key-value
// arm toolchain prefix path "TOOLCHAIN_PREFIX": "C:/GNU_Tools_ARM_Embedded",

如下图:
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


在“用户设置”追加CMake的路径
// 设置cmake的路径 "cmake.cmakePath": "C:/Program Files/CMake/bin/cmake.exe",

如下图:
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片



配置CMake编译的Kit 在菜单“查看”->“命令面板”打开命令面板,或者使用快捷键打开(Ctrl+Shift+P)打开
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


输入cmake后,自动呈现cmake相关的选项
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


可以选择CMake: Scan for Kits(自动扫描CMake工具),也可以选择CMake:Edit user-local CMake kits(用户自定义CMake工具)
这里选择CMake:Edit user-local CMake kits
备注:使用CMake:Edit user-local CMake kits(用户自定义CMake kits)编辑保存之后,不要在选择CMake:Scan for Kits(自动扫描CMake工具), 会导致自定义配置清空需要重新配置的情况,CMake:Scan for Kits会扫描到添加到环境变量的CMake kits,为了避免多个kits冲突,不添加环境变量,使用用户自定义CMake kits比较好。
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


会打开cmake-kits.json文件,编辑在文件中添加自定义CMake kit
{ "name": "GNU ARM ToolChain GCC", "compilers": { "CXX": "C:\\GNU_Tools_ARM_Embedded\\bin\\arm-none-eabi-g++.exe", "C": "C:\\GNU_Tools_ARM_Embedded\\bin\\arm-none-eabi-gcc.exe" }

如下图:
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片



选择刚才配置的GNU ARM Toolchain GCC工具 打开命令面板,输入cmake,选择CMake:Select a Kit
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


选择GNU ARM Toolchain GCC项
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


配置成功在VS Code的左下角状态栏如下所示:
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片



选择构建变量 根据自己的需求选择,这里选择Debug
打开命令面板,输入cmake,选择CMake:Set the current build variant

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


配置成功在VS Code的左下角状态栏如下所示:
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片



开始配置项目 打开命令面板,输入cmake,选择CMake:Configure

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


配置完成后,可以在VS Code的输出中看到如下图:
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片



构建LoRaMac-node项目 打开命令面板,输入cmake,选择CMake:Build(构建所有)或者CMake:Build a target(构建某个特定目标)

Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


构建LoRaMac项目完成如下图:
Windows下使用VS Code编译和构建LoRaWan开源代码
文章图片


到这里构建完成, 如果需要构建其他Application就需要修改配置文件。



原文作者:luxun12222
技术博客:https://blog.csdn.net/luxun12222/


    推荐阅读