RDK x3的交叉编译配置

x3pi交叉编译搭建及demo运行

  • 环境
  • 交叉编译环境的搭建
  • 执行demo程序
    • 配网
    • 挂载ubuntu到RDK x3中
    • 对demo的操作
  • END
    • 参考连接

环境

本文基于虚拟机ubuntu20.04以及RDK X3来进行交叉编译的环境搭建以及demo展示

交叉编译环境的搭建

交叉编译开发环境的搭建参考RDK用户手册
但是根据某大佬的帖子好像gcc-9.3.0在交叉编译QT时会报错,帖子里有另外一个编译工具的链接,各位看官自行点击获取。本文采用的编译工具链为gcc-9.3.0。

执行demo程序

在执行demo之前,先在虚拟机中运行下列命令,安装nfs网络文件系统

sudo apt install nfs-kernel-server
sudo apt install nfs-common
sudo vim /etc/exports

最后一行添加

/ *(rw,sync,ni_root_squash)

重启服务生效

sudo service nfs-kernel-server restart

配网

配置ubuntu和RDK x3在同一网段上

  • 网线连接

    若RDK x3和主机通过网线连接,相关配置参考:
    有线网络配置

  • 无线连接

    1. 将主机和RDK X3连接至同一wifi
    2. 虚拟机和主机连接的相关配置如下
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

确保二者能够相互ping通

挂载ubuntu到RDK x3中

在RDK x3的终端下运行(我进入的是root账户)

mount -t nfs -o nolock 192.168.1.37:/home/xxx /mnt

其中将192.168.1.37更换为自己ubuntu的ip地址,后面的路径也是自己的路径,我挂载的是demo程序所在的文件夹
挂载之后可以查看一下挂载的文件夹
在这里插入图片描述

在ubuntu上安装vscode,然后安装C/C++,CMake,Cmake Tools插件,然后下载demo,demo的下载地址,该连接同样来自大佬的链接

对demo的操作

首先在文件夹中找到build文件夹,然后删除CMakeCache.txt文件,如果采用的不是gcc-9.3.0的工具链,则需要打开cmake-tools-kits.json添加以下内容:


{"name":"gcc-linaro-6.5.0","compilers":{"CXX": "/opt/gcc-linaro-6.5.0-2018.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++","C": "/opt/gcc-linaro-6.5.0-2018.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc"}}

cmake-tools-kits.json的路径在/home/username/.local/share/CMakeTools/cmake-tools-kits.json

若使用的是gcc-9.3.0则不用修改
然后编译main.cpp文件可生成result可执行文件,显然该文件在虚拟机上不可运行,可通过

file result

查看程序类型
在这里插入图片描述

由于前面我们已经把ubuntu的目录挂载到了RDK X3中,因此在RDK x3中找到对应的目录进入build文件夹,运行

./result

结果如下:
在这里插入图片描述

END

参考连接

1
2

搞了很久的交叉编译终于搞完了,算是从0到0.5了吧,如果不是那当我没说


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部