ubuntu22.04搭建AX620A官方例程开发环境
前言
爱芯元智旗下最新的AX620A,是一款兼具高算力、低功耗、高能效比、高算力利用的ai方案芯片。作为第二代自研边缘侧芯片,AX620A搭载有四核Cortex-A7 CPU、14.4TOPs@INT4或3.6TOPs@INT8 的高算力NPU,支持多路sensor同时工作,支持多路子码流,支持千兆Ethernet。除此之外,AX620A不但能够满足传统的智慧城市、智能家居应用需求,还因为其功耗极小,能够满足电池应用方案的功耗需求,兼顾IOT、智能运动相机、手机等应用场景,尤其在快速唤醒类产品领域拥有卓越表现。
官方的例程仓库更新很勤快,里面有很多主流算法的demo,十分好玩。作为尝鲜,在ubuntu22.04下,使用vscode搭建了开发环境,整个过程体验下来,还是非常简单愉快的。
下载仓库和编译
git clone https://github.com/AXERA-TECH/ax-samples
我是使用交叉编译,参考编译文档:源码编译(Linux)
步骤如下:
1、安装交叉编译工具链
- 下载Arm32 Linux 交叉编译工具链获取地址, 而AX630A 的工具链是不一样的。
- 将其解压到电脑的任意目录,我的是放在
~/ax620_build/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/
目录里 - 编辑
~/.bashrc
文件,在最后加上:
export PATH=$PATH:~/ax620_build/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin
- 执行:
source ~/.bashrc
,成功的话,终端应该有以下的自动补全
2、添加opencv库和官方依赖库
下载预编译好的 OpenCV 库文件 AX620A/U 匹配;
在 ax-samples工程根目录下创建 3rdparty 文件夹,并将下载好的 OpenCV 库文件压缩包解压到该文件夹中。
下载 ax-samples 交叉编译的依赖库文件并同样解压到3rdparty 文件夹中
此时目录内容如下:
3、源码交叉编译
- 先确保安装了cmake,如果没有,安装一下:
sudo apt install cmake
$ cd ax-samples
$ mkdir build
$ cd build
$ cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/arm-linux-gnueabihf.toolchain.cmake -DBSP_MSP_DIR=../3rdparty/ax_bsp ..
$ make install
编译完成后,生成的可执行示例存放在 ax-samples/build/install/bin/ 路径下
搭建vscode开发环境
1、安装vscode linux版,具体去官网下载
2、切换到ax-samples,打开vscode创建工程
$ cd ax-samples
$ code .
如果前面源码编译一步是正确的话,vscode会自动读取cmake的配置文件,并提示下载各种相关的插件,比如c++、cmake等插件支持。还有这里点一下,选择系统中上一步配置好的交叉编译工具链
此时,直接点击vscode底部的build图标就可以编译工程,和上一步命令行是一样效果的,还有可以指定只编译哪一个例程文件,十分方便。
使用gdbServer实现在线调试
- 配置launch.json文件
在vscode中创建launch.json文件。
创建好后,选择c++启动模板
对模板文件修改以下三处地方:
"program"
:要调试的程序位置。编译源码后,可以在/build/examples/
目录下找到。miDebuggerPath
:gdb调试器arm-linux-gnueabihf-gdb
的位置,位于工具链的bin目录下。miDebuggerServerAddress
:板子的IP地址和gdbserver服务启动的端口号。
保存launch.json
文件后,就可以在vscode通过网络连接板子进行在线调试了。
当然首先要去到板子终端里启动gdbserver服务,gdbserver 开发板ip:端口号 要调试的程序,如:
gdbserver 192.168.3.12:9001 ax_classification_nv12 [程序参数]
gdbserver 程序要放在板子的系统路径下,如果没有,去工具链目录中/arm-linux-gnueabihf/libc/usr/bin
找到复制到板子里面。
最后,就可以在vscode上愉快调试了
- 遇到的问题点:
在过程中,如果遇到提示xxx不存在或者找不到的,一般使用sudo apt install xxx就能解决。比如我在执行调试时,就两次提示动态库缺失。
一个是libncurses.so.5
,执行sudo apt install libncurses5
一个是libpython2.7.so.1.0
,执行sudo apt install libpython2.7
- 分享
- 举报
-
浏览量:1416次2024-01-10 15:17:17
-
浏览量:9130次2017-11-30 20:27:01
-
浏览量:2692次2018-04-22 20:46:42
-
浏览量:2082次2021-12-07 09:35:55
-
浏览量:10734次2024-06-28 17:19:56
-
浏览量:8968次2022-03-23 10:50:32
-
浏览量:2822次2022-07-03 00:53:51
-
浏览量:851次2023-12-11 16:43:29
-
浏览量:4268次2019-12-16 13:54:11
-
浏览量:1281次2024-03-19 11:42:03
-
浏览量:643次2024-07-31 19:46:13
-
浏览量:883次2023-12-29 14:41:17
-
浏览量:7052次2021-01-21 16:18:16
-
浏览量:1556次2023-04-10 15:06:23
-
浏览量:616次2023-06-12 14:35:02
-
浏览量:1979次2020-08-03 11:21:38
-
浏览量:1880次2024-01-17 17:09:14
-
浏览量:2709次2024-04-30 21:01:38
-
浏览量:3967次2020-04-26 17:55:16
-
广告/SPAM
-
恶意灌水
-
违规内容
-
文不对题
-
重复发帖
95后IT男神
感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明