QT5.12环境搭建与源码编译

QT5.12环境搭建与源码编译

一、概述

  • QT版本:QT5.12.10
    Qt网址:http://download.qt.io/archive/qt/
  • 编译平台 ubuntu
  • 使用平台龙芯LS2K1000、龙芯派

二、安装交叉编译工具链

1、获取交叉编译工具链

交叉工具链:gcc-4.9.3-64-gnu.tar.gz

2、安装交叉工具链

 tar zxvf gcc-4.9.3-64-gnu.tar.gz  -C  /

命令执行后,在系统 /opt 目录下会有:gcc-4.9.3-64-gnu

三、QT5.12.10 源码编译

1、获取QT5.12.10源码

源码: qt-opensource-linux-x64-5.12.10.run

2、解压QT5.12.10源码

tar xvf qt-everywhere-src-5.12.10.tar.xz

3、创建编译脚本

在Qt源码目录里:

vim run.sh

run.sh里内容如下:

#!/bin/sh
export PATH=/opt/gcc-4.9.3-64-gnu/bin:$PATH
./configure -prefix /opt/Qt5.12.10-mips \
-static \
-release \
-opensource \
-make libs \
-xplatform linux-mips-g++ \
-optimized-qmake \
-pch \
-qt-libjpeg \
-qt-zlib \
-no-opengl \
-skip qt3d \
-skip qtcanvas3d \
-skip qtpurchasing \
-no-sse2 \
-no-sse3 \
-no-ssse3  \
-no-sse4.1 \
-no-sse4.2  \
-no-avx \
-no-avx2 \
-no-mips_dsp \
-no-mips_dspr2 \
-qt-zlib \
-no-openssl \
-no-xcb 	\
-no-cups \
-no-iconv \
-no-evdev  \
-no-icu  \
-no-fontconfig \
-nomake examples \
-nomake tools \
-skip qtvirtualkeyboard \
-qpa linuxfb	\
-no-opengl \
-no-libinput \
-no-gstreamer \
-no-system-proxies \
-no-slog2  \
-no-lgmon \
-linuxfb \
-v \
-qt-libjpeg \
-qt-libpng 	\
-no-libproxy \
-no-dbus	\
-no-glib	\
-no-compile-examples \

QT5.12环境搭建与源码编译_第1张图片

4、添加龙芯平台的qmake.conf

因为当前QT5.12.10源码里没有mips架构的qmake,所以修要手动添加。
QT5.12.10源码目录下
命令1: mkdir qtbase/mkspecs/linux-mips-g++
命令2: cp qtbase/mkspecs/linux-arm-gnueabi-g++/* qtbase/mkspecs/linux-mips-g++

修改qmake.conf文件:

vim qtbase/mkspecs/linux-mips-g++/qmake.conf

修改成如下内容:
QT5.12环境搭建与源码编译_第2张图片

5、开始编译

命令1: ./run.sh 备注:配置时会提示Do you accept the terms of either license? 选择 y 即可
命令2: make
命令3: make install

make 时间会比较长,需要耐心等待。
make install 后,会生成一个目录,在/opt/Qt5.12.10-mips

如果编译没有出错,成功生成Qt5.12.10-mips,至此Qt源码编译完成。Qt5.12.10-mips会在下边qtcreator配置时会用到。

四、 qtcreator安装

1、获取安装文件

安装文件:qt-opensource-linux-x64-5.12.10.run

2、开始安装

QT5.12环境搭建与源码编译_第3张图片
点击“下一步”
QT5.12环境搭建与源码编译_第4张图片
QT5.12环境搭建与源码编译_第5张图片
点击“下一步” 安装完成。

到安装目录下打开qtcreator
QT5.12环境搭建与源码编译_第6张图片
QT5.12环境搭建与源码编译_第7张图片

五、 qtcreator配置交叉编译环境

配置交叉编译环境会用到Qt5.12.10-mips
QT5.12环境搭建与源码编译_第8张图片
QT5.12环境搭建与源码编译_第9张图片
QT5.12环境搭建与源码编译_第10张图片点击“Apply”
QT5.12环境搭建与源码编译_第11张图片
点击“Apply”
QT5.12环境搭建与源码编译_第12张图片
QT5.12环境搭建与源码编译_第13张图片
点击“Apply”

至此 qtcreator交叉编译环境配置完成。

六、 创建Qt工程

QT5.12环境搭建与源码编译_第14张图片
QT5.12环境搭建与源码编译_第15张图片
QT5.12环境搭建与源码编译_第16张图片

QT5.12环境搭建与源码编译_第17张图片

QT5.12环境搭建与源码编译_第18张图片
QT5.12环境搭建与源码编译_第19张图片
QT5.12环境搭建与源码编译_第20张图片
至此可以看到添加的kits
QT5.12环境搭建与源码编译_第21张图片
QT5.12环境搭建与源码编译_第22张图片
QT5.12环境搭建与源码编译_第23张图片

从主界面也能看到龙芯平台的kits

1、ctrl + b 编译

编译成功后,到项目目录下,可以找到龙芯平台上可执行文件123
QT5.12环境搭建与源码编译_第24张图片
将可执行文件123拷贝到龙芯派板卡上,即可运行!

将龙芯派启动到系统下执行如下命令:

2、运行程序 ./123 -platform linuxfb

备注:
QT4
Qt4的程序在嵌入式Linux运行时,需要加入参数“-qws”启动Qt窗口系统服务,如“./app -qws”运行app程序

QT5
从Qt5.0开始,Qt自身不再单独实现窗口系统,QWS不复存在,取而代之的新机制是QPA(Qt平台抽象),QPA使得Qt对不同平台的支持变得更加灵活,当需要支持一个新平台时,只需为该平台编写一个QPA插件

Qt5运行时需要通过“-platform”来制定QPA插件,如果不指定就默认使用QPA插件,在QT_QPA_PLATFORM变量制定,比如:

./app -platform eglfs

./app -platform linuxfb

你可能感兴趣的:(龙芯,qt,linux,ubuntu)