瑞芯微RV1126B开发板(EASY-EAI-PI2) 开发(编译)方式说明

1. 交叉编译(推荐)

1.1 优缺点

优点:

采用x86架构的CPU进行编译,编译速度快。

源码编辑方便,开发环境支持各种如vsCode、qtCreator等IDE。

缺点:

编译环境需要进行安装部署。

程序的调试运行操作相对本地编译不那么直接。

1.2 EASY-EAI编译环境简介

EASY-EAI编译环境是一款由广州灵眸科技自主研发的在线编译环境(开发板在线)。建立了PC端与板卡端实时同步的映射关系;保障了在PC端进行交叉编译时,能与开发板的依赖库进行实时链接。

1.2.1 安装部署方式

EASY-EAI编译环境,相对于传统的通过解压编译工具链配置系统环境变量的交叉编译环境,具有部署更加方便的特点,并且屏蔽了各种兼容性问题。具体的安装步骤在《入门指南/开发环境准备/Easy-Eai编译环境准备与更新》文章中有详细的说明。

1.2.2 挂载嵌入式设备(开发板)

首先,通过run.sh 2204脚本进入EASY-EAI编译环境:

然后通过串口调试,查看设备IP地址:

回到EASY-EAI编译环境,尝试ping通开发板。能ping通后,则选用一个IP地址(eth0,wlan0都行),把开发板的rootfs根目录需要通过mount命令挂载到EASY-EAI编译环境中的/mnt,命令如下所示:

复制代码
sudo mount -t nfs -o nolock 192.168.3.86:/ /mnt

我们在EASY-EAI编译环境中编译好可执行程序,再把可执行程序拷贝进/mnt内,它就会自动被同步到开发板的rootfs根目录中。

1.3 常规编译手段示例

【百度网盘】

链接:https://pan.baidu.com/s/13rdifPHyZwHFIvbvBC78jw?pwd=1234

提取码:1234

此处是四种常规编译方式的编译示例:

每个示例都包含了一个build.sh脚本,以及一个源代码文件,如下所示。

我们随便进入一个示例,在里面执行./build.sh操作,就会生成一个hello文件

然后只需要在EASY-EAI编译环境中把生成的文件拷贝到/mnt的任意子目录中即可

通过串口调试进入板卡后,定位到刚刚拷贝hello文件的位置,如下所示:

复制代码
cd /userdata/

执行ls命令查看该目录,就可以发现hello文件已经被同步过来了

复制代码
ls

直接运行hello文件,即可看到运行结果

复制代码
./hello

1.4 常规编译手段说明

由映射关系得知,EASY-EAI编译环境的/mnt目录就是开发板的根目录,由于交叉编译工具的依赖库都在开发板上,因此只需要给编译器指定sysroot为/mnt即可。

GCC/G++:

复制代码
aarch64-linux-gnu-gcc --sysroot=/mnt hello_world.c -o hello 
aarch64-linux-gnu-g++ --sysroot=/mnt hello_world.cpp -o hello 

CMAKE:在 CMakeList.txt 文件中包含以下文件即可。

复制代码
include ($ENV{HOME}/configs/cross.cmake)

QMAKE:qmake工具直接安装到开发板中,所以可以直接在EASY-EAI编译环境中执行qmake,示例命令如下。

复制代码
/mnt/usr/bin/qmake xxxxxx.pro  make  

2. 本地编译

2.1 优缺点

优点:

把开发板直接当成一台卡片电脑使用,无须进行繁琐的应用部署。

缺点:

采用rv1126B的CPU进行编译,性能相对较弱,编译速度慢。

源码编辑困难,仅有源生的vi编辑器可使用,无法使用各种IDE。

2.2 使用方法

可以利用:adb、调试串口、ssh三种方式进入开发板后台,然后直接把开发板当做一台装有ubuntu系统的电脑使用。

相关推荐
云边云科技_云网融合14 小时前
工业制造多厂区、供应链远程数据传输网络如何优化?
运维·服务器·网络
张毅2004-10-1014 小时前
docker详解:安装docker,docker架构,docker镜像、容器、网络、存储,容器监控,容器日志,综合实验
linux·运维·docker·云原生·云计算
Yyyyyy~14 小时前
[Linux]常用指令1
linux
clear sky .15 小时前
[TCP]MCU上如何编辑TCP服务端程序,思路框架
服务器·网络·tcp/ip
Run_Teenage15 小时前
嵌入式:深刻理解GPIO的上拉输入、下拉输入、浮空输入、模拟输入
单片机·嵌入式硬件
笑一下蒜了.15 小时前
Linux 存储多路径访问手册|multipath.conf 各配置段详解
android·linux·运维
方品15 小时前
【无标题】
服务器·人工智能·深度学习·nlp
文优15 小时前
Linux 常用命令速查手册(工作版)
linux·运维·docker
云飞云共享云桌面15 小时前
非标装备厂降本方案|8‑10 人三维研发共用一台主机,兼容SolidWorks等多款 3D 绘图软件
运维·服务器·3d·自动化·负载均衡·制造
尚思卓越15 小时前
服务器跨域文件传输:3 种常见方案对比与选型思路
服务器·数据安全·文件传输·服务器运维·跨网传输