飞凌嵌入式
直播中

yuzhiwen1986

11年用户 91经验值
擅长:电源/新能源,嵌入式技术
私信 关注
[技术]

【飞凌RK3568开发板试用体验】OK3568源码及应用程序编译

环境及源码

环境准备

  • 开发环境操作系统:Ubuntu18.04 64位版
  • 交叉工具链:aarch64-linux-gnu
  • 开发板使用Bootloader 版本:u-boot-2017.09
  • 开发板内核版本:linux-4.19.206
  • 开发板移植QT版本:qt5.14.2

源码

. 程序源码:用户资料\Linux\源码\OK3568-linux-source.tar.bz2

创建工作目录

在进行开发之前,还需要一些其他的必要库,我们使用以下命令逐一安装,安装前需保证网络可正常使用,能上外网:

yu@ubuntu:~$ sudo apt-get update //更新下载源信息
yu@ubuntu:~$ sudo apt-get install build-essential //提供编译程序必须软件包的列表信息
yu@ubuntu:~$ sudo apt-get install libncurses* //用于生成基于文本的用户界面
yu@ubuntu:~$ sudo apt-get install lzop //基于Lzo库的压缩解压工具
yu@ubuntu:~$ sudo apt-get install net-tools //网络配置工具

编译OK3568 Linux源码必要库安装

yu@ubuntu:~$ sudo apt-get update //更新apt-get下载源
yu@ubuntu:~$ sudo apt-get install openssh-server vim git fakeroot //必备工具包的安装
yu@ubuntu:~$ sudo apt-get install repo git ssh make gcc libssl-dev liblz4-tool expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support qemu-user-static live-build bison flex fakeroot cmake gcc-multilib g++-multilib unzip device-tree-compiler python-pip libncurses5-dev

内核编译

全编译测试

在源码路径内,提供了编译脚本 build.sh,运行该脚本对整个源码进行编译,需要在终端切换到解压
出来的源码路径,找到 build.sh 文件

yu@yu-HP-EliteBook-745-G3:~/code/OK3568-linux-source$ ls
app        debian       external  mkfirmware.sh  rockdev        yocto
br.log     device       IMAGE     prebuilts      tools
buildroot  docs         kernel    rkbin          u-boot
build.sh   envsetup.sh  Makefile  rkflash.sh     uboot.tar.bz2
yu@yu-HP-EliteBook-745-G3:~/code/OK3568-linux-source$ ./build.sh

image.png

编译一段时间后会弹出下图界面,需要选择,提取图中信息,VCCIO4 和 VCCIO6 选择 1800000 其
余的选择 3300000,使用上下方向按键选择选项,按回车确认选择即可。编译成功后,将在 IMAGE 文件夹下生成对应编译工程结果文件,找到其中的镜像文件。

yu@yu-HP-EliteBook-745-G3:~/code/OK3568-linux-source$ cd IMAGE/
yu@yu-HP-EliteBook-745-G3:~/code/OK3568-linux-source/IMAGE$ ls
OK3568-C-LINUX_20221215.1650_RELEASE_TEST
yu@yu-HP-EliteBook-745-G3:~/code/OK3568-linux-source/IMAGE$

单独编译内核

yu@yu-HP-EliteBook-745-G3:~/code/OK3568-linux-source$ ./build.sh -build kernelprocessing option: -build

清除编译生成文件

该操作清除所有中间文件。但不影响源文件,包括已经有改动的源文件。注意:uboot 源码目录不可以执行 make clean 命令,否则会导致 uboot 无法编译。

yu@yu-HP-EliteBook-745-G3:~/code/OK3568-linux-source$ make clean

Qt Creator 安装&环境配置

将 qt-creator-opensource-linux-x86_64-4.1.0.run 拷贝至当前用户目录下的任意目录下,执行下面命令:

yu@yu-HP-EliteBook-745-G3:~/code$ ls
OK3568-linux-source  OK3568-linux-source.tar.bz2  OK3568-linux-source.tar.bz2.checksum  qt-creator-opensource-linux-x86_64-4.7.0.run
yu@yu-HP-EliteBook-745-G3:~/code$ ./qt-creator-opensource-linux-x86_64-4.7.0.run

然后会弹出图形界面的安装窗口,按照提示进行安装.

安装完成,点击 finish。这时将自动打开 Qt 界面,也可以通过命令行启动,执行以下命令,以后台方式打开 Qt Creator,用户打开时以自己实际安装路径为准:
image.png

qbs  qbs-config  qbs-config-ui  qbs-create-project  qbs-setup-android  qbs-setup-qt  qbs-setup-toolchains  qt.conf  qtcreator  qtcreator.sh
yu@yu-HP-EliteBook-745-G3:~/qtcreator-4.7.0/bin$ ./qtcreator &

交叉编译器配置

1、点击 Qt Creator 的 Tools ->Options->Kits->Compilers, 然后点击 Add ->GCC->C;
2、Name 输入 GCC;
3、Compiler Path 点击 Browse 选择交叉编译器的路径为:aarch64-linux-gcc 和 aarch64-linux-g++,
如下图所示:
image.png

Qt Version 配置

1、点击 Qt Creator 的 Tools ->Options->Qt Versions,
2、然后点击 Add,弹出对话框选择 OK3568-linux-source/buildroot/output/OK3568/host/bin/qmake
3、点击 open 添加
image.png

4、然后会返回 Qt Version 配置框,Version name 可以自行更改。
5、然后点击 Apply 及 OK

Ktis 配置

Kits 是一个构建套件,用来构建和选择开发编译环境,对于有多种 QT 库的项目很有用。将之前添加的交叉编译器和 QT Version 添加到 Kits 中,构建适合开发板的编译环境
1、点击 Qt Creator 的 Tools ->Options->Kits, 然后点击 Add,出现配置部分。
2、Name 自行更改。
3、Compiler 选择 GCC。
4、Qt version 选择 Qt version 创建时输入的名字。
image.png

应用程序编译及运行

编译并运行命令行应用

本小节使用看门狗测试程序,使用 cd 命令进入/home/yu/code/OK3568-linux-source/app/forlinx/forlinx_cmd/fltest_watchdog目录

  1. 添加交叉编译器路径,使用 make 进行交叉编译
yu@yu-HP-EliteBook-745-G3:~/code/OK3568-linux-source/app/forlinx/forlinx_cmd/fltest_watchdog$ export PATH=/home/yu/code/OK3568-linux-source/buildroot/output/OK3568/host/bin/:$PATH
yu@yu-HP-EliteBook-745-G3:~/code/OK3568-linux-source/app/forlinx/forlinx_cmd/fltest_watchdog$ make
aarch64-linux-gcc watchdog.c -o fltest_watchdog  
generate fltest_watchdog success!!!
yu@yu-HP-EliteBook-745-G3:~/code/OK3568-linux-source/app/forlinx/forlinx_cmd/fltest_watchdog$ ls
fltest_watchdog  Makefile  watchdog.c
yu@yu-HP-EliteBook-745-G3:~/code/OK3568-linux-source/app/forlinx/forlinx_cmd/fltest_watchdog$ 


  1. 将编译生成的 fltest_watchdog 通过 U 盘或者 ftp 等方式拷贝到板子上,比如/forlinx 路径下,下述以 tf卡为例,拷贝到开发板,运行.
  2. 参考用户使用手册“看门狗测试”章节测试

编译并运行QT应用程序

在开发环境打开 Qt Creator (用户根据自己的实际路径打开),点击 Qt Creator 的 File->Open File or Project,弹出窗口,选择/3568/OK3568-linux-source/app/forlinx/forlinx_qt/watchdog/watchdog.pro
image.png

打开项目后界面如下:

image.png

点击 Configure Project 后将适配本手册《Qt Creator 环境配置》章节中构建的编译环境。
选择后界面如下:
image.png

点击 Build->Clean All 进行清空。(如果没有清除中间文件可以手动删除)。
点击 Projects 取消选中 Shadow build
image.png
然后点击 Build->Build All 进行编译

更多回帖

发帖
×
20
完善资料,
赚取积分