You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Linux下nRF C/C++ VS Code项目移植到Windows平台

nRF5480-DK项目从Linux迁移到Windows平台实操说明

项目结构调整要求

  • 核心业务代码目录无需改动:src/下的C源码、include/下的头文件、链接脚本linked.ld均可直接跨平台复用,不需要调整文件位置或修改代码逻辑
  • 直接删除原Linux环境生成的build/目录:旧目录里的Linux格式中间文件、目标文件会干扰Windows下的编译流程,Windows下重新编译时会自动生成适配当前环境的构建产物
  • 仅需修改.vscode目录下的配置文件:把所有类Unix格式的绝对路径替换为Windows本地实际安装路径,路径可以直接用正斜杠避免转义问题,比如原配置里的SDK路径、工具链路径要改成类似C:/nRF5_SDK_17.1.0_ddde560、C:/GNU Arm Embedded Toolchain/10 2021.10/bin的格式,同步更新c_cpp_properties.json里的头文件包含路径、编译器路径,避免VS Code出现误报。

Makefile是否需要替换为CMake

  • 不需要强制替换。你用的nRF SDK 17.1.0原生支持GNU Make构建体系,只要Windows环境配置了兼容的make工具(推荐使用MSYS2提供的make,或nRF命令行工具包自带的make,避免老旧MinGW版本的路径兼容问题),原有Makefile仅需微调硬编码路径即可正常使用
  • 只有当你后续计划长期跨多平台开发,或准备升级到默认采用CMake构建的新版nRF Connect SDK时,再考虑做CMake迁移,当前移植阶段完全不需要改动构建体系,优先保证编译、烧录功能正常即可。

移植操作注意事项

  • 第一步先验证工具链全局可用性:打开终端依次执行arm-none-eabi-gcc --version、make --version、nrfjprog --version,确认三个命令都能正常返回版本信息,如果提示找不到命令,先把对应工具的bin目录添加到Windows系统环境变量PATH中
  • 排查Makefile内的硬编码内容:打开原有Makefile,把所有写死的SDK路径、工具链路径替换为Windows本地实际路径,如果路径包含空格(比如安装在Program Files目录下),要给路径加英文双引号避免make解析报错;如果Makefile里调用了rm、cp这类Linux专属shell命令,直接在MSYS2终端下执行make即可兼容,不需要修改命令逻辑
  • 链接脚本linked.ld无需任何修改,Arm GCC工具链跨平台对链接脚本的解析逻辑完全一致
  • 首次编译前先执行make clean清空所有残留的旧中间文件,再执行make生成hex格式固件,若编译时报路径类错误,优先排查所有配置项里的路径是否存在、格式是否正确
  • 烧录前先确认开发板驱动正常:打开Windows设备管理器,确认nRF5480-DK板载的J-Link调试器被正常识别,没有黄色感叹号,之后就可以用和Linux下完全一致的nrfjprog命令、或VS Code预设任务完成固件烧录
  • 如果需要使用在线调试功能,检查launch.json里的GDB路径、J-Link GDB Server路径是否指向Windows下的对应程序,避免调试启动失败。

内容的提问来源于stack exchange,提问作者shakingwindow

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 01:15:36