陈工-创龙科技 发表于 2026-5-25 10:41:48

RV1126B 评估板 Linux 应用开发与调试指南

前言本文为Linux应用开发的指引文档,提供Linux应用开发环境、开发流程等说明,以及对平台关键技术及其支持情况进行简要介绍。同时本文将对部分通用开发技术进行说明,其它应用开发内容请按文中说明选择对应参考文档进行阅读。当前应用开发支持情况如下表所示。https://file1.elecfans.com/web3/M00/61/4A/wKgZO2oTrhqAYN1gAAAYwz3o4Z4154.png
在完成开发环境搭建后,可参考本文的“Linux常用开发案例”章节熟悉基本的应用开发流程,再参考其他用户手册文档进行产品应用开发。开发环境Windows开发环境:Windows10 64bitLinux开发环境:VMware16.2.5、Ubuntu22.04 64bitLinuxSDK开发包:LinuxSDK-[版本号](基于rv1126b_linux6.1_release_v1.2.0)评估板系统版本:U-Boot 2017.09、Linux-6.1.141、Buildroot-2024.02交叉编译工具链:应用开发:aarch64-buildroot-linux-gnu-gcc(版本为13.4.0,通过LinuxSDK编译生成)U-Boot、内核开发:gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu备注:本文基于16GByte eMMC、2GByte LPDDR4X配置核心板进行演示。

1开发环境搭建说明1.1 LinuxSDK使用说明由我司提供的LinuxSDK-[版本号]开发包位于产品资料“4-软件资料\Linux\LinuxSDK”目录下,基于瑞芯微的rv1126b_linux6.1_release_v1.2.0进行开发。请参考《开发环境搭建》的“LinuxSDK安装”章节正确解压LinuxSDK并安装相关依赖软件,然后参考《Linux系统开发手册》的“LinuxSDK配置与编译”章节正确编译LinuxSDK,生成支持应用开发的交叉编译工具链和sysroot。编译完LinuxSDK后,请执行如下命令,完成Linux应用开发的环境变量配置,即可进行Linux应用开发。Host# source /home/tronlong/RV1126B/rv1126b_linux6.1_release/buildroot/output/tl1126_evm/rockchip_rv1126b/host/environment-setuphttps://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTriOAJox7AADDtlPHyRY577.png1.2 sysroot使用说明我我司提供的sysroot压缩包主要包含应用开发时所需的库(常用开发库、Qt库等),适用于Linux系统应用开发。请将产品资料“4-软件资料\Linux\LinuxSDK\”目录下的sysroot压缩包拷贝至上位机Ubuntu系统"/home/tronlong/RV1126B/"目录。执行如下命令,将其解压,解压完成后会在当前目录下生成一个"aarch64-buildroot-linux-gnu_sdk-buildroot"目录,该目录包含应用开发的交叉编译工具链。备注:sysroot压缩包版本以实际情况为准。Host# tar -zxf rv1126-buildroot-2024.02-sysroot-v1.0.tar.gzhttps://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrimAGwWPAACr67FTft0779.png
执行如下命令,查看应用开发的交叉编译工具链。Host# ls aarch64-buildroot-linux-gnu_sdk-buildroot/https://file1.elecfans.com/web3/M00/61/4A/wKgZO2oTri6APLCeAABiCo9cWXs891.png
执行以下命令运行relocate-sdk.sh脚本,完成LinuxSDK路径重定位,若未执行该操作,将导致sysroot无法正常使用。Host# ./relocate-sdk.shhttps://file1.elecfans.com/web3/M00/61/4B/wKgZO2oTrjKAcyCvAAB2OoLw0lw036.png
执行如下命令,加载Linux应用开发环境。Host# source environment-setuphttps://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrjiAVtFyAADNEa8gS5Y189.png
1.3工具链使用说明通过source命令完成环境变量配置后,请执行如下命令,查看编译工具链版本。Host# aarch64-buildroot-linux-gnu-gcc -vhttps://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrj2AN0iSAAHrKWRNziQ085.png
2 GDB调试说明GDB为GNU推出的经典命令行调试工具,在Linux系统下广泛使用。它功能强大,能让开发者单步执行程序、逐过程或逐语句调试,自由跳入或跳出函数,还能按条件设置断点,实时查看变量值,精准定位程序问题。GDB支持多种语言,包括汇编、C/C++、D、Fortran、GO、Objective-C、OpenCL等。此外,它有远程调试模式,在嵌入式系统调试中优势明显。借助TCP/IP协议及专有通信协议,可让调试程序的主机与运行程序的目标机跨设备协作,高效完成调试任务。2.1调试环境搭建请先参考产品资料用户手册目录下的《开发环境搭建》和《Linux系统开发手册》安装、编译LinuxSDK。GDB调试工具压缩包gdb-[版本号].tar.xz位于LinuxSDK源码"buildroot/dl/gdb/"目录下。https://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrkSAcTDlAABGKy1_-Dw253.png
在RV1126工作目录下执行如下命令,创建gdb-tool目录用于存放GDB调试工具压缩包,将GDB调试工具包拷贝至该目录下并解压。Host# mkdir gdb-toolHost# cd gdb-tool/Host# cp /home/tronlong/RV1126B/rv1126b_linux6.1_release/buildroot/dl/gdb/gdb-15.2.tar.xz ./Host# tar -xvf gdb-15.2.tar.xzhttps://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrkuAPH0XAAB6NRH8kNU926.png

https://file1.elecfans.com/web3/M00/61/4B/wKgZO2oTrkuAMz5kAAAywJ6p2rQ021.png
执行如下命令,配置交叉编译工具链环境变量,并新建install目录用于存放编译生成的GDB调试工具。Host# export PATH=$PATH:/home/tronlong/RV1126B/aarch64-buildroot-linux-gnu_sdk-buildroot/binHost# mkdir install备注:若当前终端已执行过交叉编译工具链的source操作,请勿直接在该终端内进行环境变量export配置,应重新打开新终端后再执行配置操作,否则会造成GDB编译失败。https://file1.elecfans.com/web3/M00/61/4B/wKgZO2oTrlCAR9jNAACBDc5Lkug430.png
执行如下命令,进入GDB调试工具包目录,配置GDB调试工具。Host# cd gdb-15.2Host# ./configure --target=aarch64-buildroot-linux-gnu --prefix=/home/tronlong/RV1126B/gdb-tool/install备注:--target表示GDB调试工具名称前缀,选择--target=aarch64-buildroot-linux-gnu;--prefix表示存放目录,选择新建的install目录。https://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrlmAfmv-AAEC5k6r34w423.png
https://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrlmAYntRAADUZKPfmpw770.png
执行如下命令进行编译。Host# makehttps://file1.elecfans.com/web3/M00/61/4B/wKgZO2oTrmSADk_hAAD8fkWfaEY472.png
https://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrmOABw27AAE9qkgeqBE710.png
执行如下命令安装GDB调试工具,将会在"install"目录下生成GDB调试工具。Host# make installhttps://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrm-AV9FtAAEjyS-fnpM776.png

https://file1.elecfans.com/web3/M00/61/4B/wKgZO2oTrm-Ab-3GAADUbQJrfqk058.png
2.2演示程序创建与编译在gdb-tool目录下执行如下命令,新建一个GDB调试演示程序。Host# vi test.cHost# cat test.chttps://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrpCAfS4nAACar8d8RYs554.png
演示程序代码如下:
#includevoid show() {    printf("show\n");}int main(int argc, char *argv[]){    int arr = {1, 2, 3, 4};    int i = 0;    for (i = 0; i < 4; i++) {      printf("arr[%d]: %d\n", i, arr);    }    show();    return 0;}
执行如下命令,进行程序编译,编译完成将会生成test可执行程序。备注:编译时需添加-g参数,生成的可执行文件才带有调试信息。Host# aarch64-buildroot-linux-gnu-gcc -g test.c -o testhttps://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrpaAAacnAABkbeYMTWE136.png
评估板与PC机连接至同一个路由器后进行上电,将编译生成的可执行文件test拷贝至评估板文件系统的任意目录,执行以下命令,修改文件权限。Target# ls testTarget# chmod +x testhttps://file1.elecfans.com/web3/M00/61/4B/wKgZO2oTrpuAZwN-AAAHFUp4m-Y328.png
2.3调试程序运行执行如下命令,查看虚拟机的IP地址。Host# ifconfighttps://file1.elecfans.com/web3/M00/61/4B/wKgZO2oTrqKAAahsAAEammjcwTo926.png
在评估板文件系统test文件所在路径下,执行如下命令运行gdbserver程序,开启监听。备注:192.168.12.3为虚拟机的IP地址;1234为连接的端口号(自行设置);test为将要进行调试的程序。Target# gdbserver 192.168.12.3:1234 testhttps://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrqiAb2SkAAALepg76eA925.png
在虚拟机test文件所在路径下,执行如下命令使用GDB调试工具进行程序调试。Host# ./install/bin/aarch64-buildroot-linux-gnu-gdb testhttps://file1.elecfans.com/web3/M00/61/4B/wKgZO2oTrq6AFqpMAAE5Y3-A13M963.png
执行如下命令,连接评估板。192.168.12.18为评估板的IP地址,请以实际情况为准。(gdb) target remote 192.168.12.18:1234https://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrrSAa-S5AADO2pNkc4c345.png
同时,串口调试终端显示连接成功的相关信息。https://file1.elecfans.com/web3/M00/61/4C/wKgZPGoTrruAP7eBAAAPtOr1xXM277.png
2.4程序调试本章节主要演示GDB调试的几个常用命令的使用方法。2.4.1 list命令用于列出源码,简写:l。https://file1.elecfans.com/web3/M00/45/A3/wKgZO2lbeNaADCH8AABiyg4_q08562.png
2.4.2 break命令用于设置断点,简写:b。分别在main函数和第10行设置断点。https://file1.elecfans.com/web3/M00/61/4D/wKgZPGoTrtGAKa9PAAAzO6MIyXA851.png
2.4.3 info breakpoints命令用于显示断点的状态,简写:info b。https://file1.elecfans.com/web3/M00/61/4D/wKgZPGoTrtmAPcCFAABUeujeC0w393.png
由于篇幅过长等原因,部分内容均不逐一展示,如需获取完整版详细资料,请关注Tronlong创龙科技微信公众号或官网,或者评论区留言,感谢您的支持!

页: [1]
查看完整版本: RV1126B 评估板 Linux 应用开发与调试指南