返回

Linux RK3568 Qt交叉编译开发环境搭建实战

后端

RK3568是一款高效的国产MCU,本文主要讲解如何在ubuntu上搭建一套完整的Qt交叉编译开发环境,并以此编译运行Demo的详细步骤。希望本文能够帮助RK3568的用户快速搭建Qt交叉编译开发环境,并顺利运行Demo。

准备工作

环境搭建

  • ubuntu 18.04 LTS
  • Qt 5.12.12
  • rk3568 SDK

安装以下软件包:

sudo apt update
sudo apt install build-essential git cmake ninja-build libusb-1.0-0-dev libgtk-3-dev libxcb-xinerama0-dev libxcb-randr0-dev

安装Qt

下载Qt

wget https://download.qt.io/official_releases/qt/5.12/5.12.12/single/qt-opensource-linux-x64-5.12.12.run

安装Qt

chmod +x qt-opensource-linux-x64-5.12.12.run
./qt-opensource-linux-x64-5.12.12.run

设置环境变量

export QT_ROOT=/opt/qt512
export PATH=$QT_ROOT/bin:$PATH

编译Qt

下载rk3568 SDK

wget https://www.rockchip.com/support/download/268

解压rk3568 SDK

tar -xf rk3568-linux-sdk_v1.2.10.tar.gz

编译Qt

cd qt-everywhere-src-5.12.12
./configure -embedded arm64-linux-gnueabihf -opensource -confirm-license -device linux-rk3568-g++ -device-option CROSS_COMPILE=/opt/rk3568-linux-sdk_v1.2.10/usr/bin/arm-linux-gnueabihf-
make -j8
make install

编译Demo

创建Demo项目

cd ~/Projects
mkdir Demo
cd Demo

创建CMakeLists.txt文件

cmake_minimum_required(VERSION 3.5)

project(Demo)

set(CMAKE_CXX_COMPILER arm-linux-gnueabihf-g++)
set(CMAKE_C_COMPILER arm-linux-gnueabihf-gcc)

set(CMAKE_SYSROOT /opt/rk3568-linux-sdk_v1.2.10/usr/arm-linux-gnueabihf/)

find_package(Qt5 COMPONENTS Core Gui REQUIRED)

add_executable(Demo main.cpp)

target_link_libraries(Demo Qt5::Core Qt5::Gui)

创建main.cpp文件

#include <QApplication>
#include <QLabel>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);

    QLabel label("Hello, RK3568!");
    label.show();

    return app.exec();
}

编译Demo

cmake .
make

运行Demo

将Demo拷贝到RK3568开发板

scp Demo root@192.168.1.100:/home/root

在RK3568开发板上运行Demo

cd /home/root/Demo
./Demo

总结

本文介绍了如何在ubuntu上搭建Qt交叉编译开发环境,并以此编译运行Demo的详细步骤。希望本文能够帮助RK3568的用户快速搭建Qt交叉编译开发环境,并顺利运行Demo。