Ai-M61-32S的CMake模板项目HelloWorld

[复制链接]
查看621 | 回复7 | 2023-11-22 14:19:34 | 显示全部楼层 |阅读模式

本帖最后由 SmileYik 于 2023-11-22 19:56 编辑

Example cmake project for AI-M6X-SDK

获取方式可以去Github:AI-M6X-cmake-example

直接clone下来就可以直接使用。

中文

如何使用

首先对于Windows用户,需要安装好 CMake Git,而对于Linux用户,除了以上两个软件需要安装以外,还需要安装 Ninja

此外需要准备好SDK:AI-M6X-SDK

当你准备好SDK后,你可以选择将SDK路径加入至你的系统环境变量中或者直接对项目所检测SDK的默认路径进行配置,对于添加系统环境变量,则需要直接新建一个名为 AI_M6X_SDK的环境变量,并将SDK根目录路径作为此环境变量的值,例如 AI_M6X_SDK='/path/to/your/sdk';而对于不想设置环境变量的用户,可以在 proj.conf文件中 手动配置SDK路径。

如果未设置环境变量 AI_M6X_SDK,并且默认位置不存在 SDK, 则会自动拉取 SDK 至你所设定的默认路径;相似的,如果工具链不存在,则会自动拉取对应工具链至 SDK 路径

你完全可以直接将此示例复制一份,更改文件名后直接使用。

项目配置

在这个示例的 proj.conf中,你可以手动指定SDK路径,烧录所使用的串口以及波特率等等参数。

烧录

当你已经使用cmake配置好了这个示例项目后(如命令行方式使用 cmake -S . -B build配置),你可以构建 flash目标(如使用 ninja -j 2 -C build flash),此目标能够提供从编译到烧录到 proj.conf文件中所指定的串口一条龙服务。

在linux下可能会因为有权限原因,可以在CMakeLists.txt下,如下地方加入sudo(在编辑工具或IDE将输入流重定向至NULL则可能得找其他方法了) 或者是 pkexec 等指令进行包装,也可以直接将整个ninja指令包装起来。 image.png

手动配置项目

如果你想使用终端或者powershell去配置此项目,你可以参考下面步骤。

Linux

确保你的系统已经安装好了 ninja, git and cmake.

在示例项目所在文件夹中打开终端,输入以下指令即可完成配置:

cmake -S . -B build

Windows

确保你的系统已经安装好了 git and cmake. 并且可以通过 powershell 或者 cmd 指令方式访问到 cmakegit指令!

在示例项目所在文件夹中打开Powershell或cmd,输入以下指令即可完成配置:

cmake -S . -B build

使用VSCode、Clion或其他编辑工具进行配置

VSCode

你必须在你的VSCode中先安装好 CMake Tools拓展,并在VSCode中打开此示例项目,在弹出的选择套件窗口中选择 由CMake自己指定 选项,然后待配置完成后你可以将构建目标设置为 flash,之后你可以直接点击构建按钮,此时会自动编译并烧录至你所指定的串口中。

vscode-select-kit.png

vscode-change-target.png

  1. 选择套件
  2. 构建所选目标
  3. 选择构建目标
  4. 选择 flash 作为构建目标

CLion

直接打开就好了,CLion好像是默认采用Ninja生成器,打开应该就能用 image.png

使用过程展示

  1. 配置项目并自动拉取SDK并注册子模块 image.png
  2. 构建目标并烧录 image.png image.png
回复

使用道具 举报

Mr.Tail | 2023-11-22 15:25:42 | 显示全部楼层
大佬,开发板型号是Ai-M61-32S哦
回复 支持 反对

使用道具 举报

qwe2079282957 | 2023-11-22 15:33:59 | 显示全部楼层
这是要撇开61-32S的SDK/tool,另起炉灶?
回复 支持 反对

使用道具 举报

SmileYik | 2023-11-22 15:45:15 | 显示全部楼层
qwe2079282957 发表于 2023-11-22 15:33
这是要撇开61-32S的SDK/tool,另起炉灶?

不好意思 打错了字
回复 支持 反对

使用道具 举报

SmileYik | 2023-11-22 15:46:30 | 显示全部楼层
Mr.Tail 发表于 2023-11-22 15:25
大佬,开发板型号是Ai-M61-32S哦

不好意思 打错了字
回复 支持 反对

使用道具 举报

SmileYik | 2023-11-22 15:48:35 | 显示全部楼层
qwe2079282957 发表于 2023-11-22 15:33
这是要撇开61-32S的SDK/tool,另起炉灶?

64-32S的SDK/tool是什么
回复 支持 反对

使用道具 举报

qwe2079282957 | 2023-11-22 15:59:13 | 显示全部楼层
SmileYik 发表于 2023-11-22 15:48
64-32S的SDK/tool是什么

tool目录有make,ninja,配置环境变量就好,需要安装cmake和ninja?除非别的开发软件需要
回复 支持 反对

使用道具 举报

SmileYik | 2023-11-22 16:13:50 | 显示全部楼层
本帖最后由 SmileYik 于 2023-11-22 16:17 编辑
qwe2079282957 发表于 2023-11-22 15:59
tool目录有make,ninja,配置环境变量就好,需要安装cmake和ninja?除非别的开发软件需要 ...

这些可以自由发挥,如果想用sdk里提供的可以自己配置。
另外make和cmake并不是一个东西。使用cmake原因是想让工程易于管理。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则