(盈鹏飞嵌入式SBC-T113全志T113-i主板)-Qt5.12图形库配置说明(可选组件)

SBC-T113产品特性:

• 采用Allwinner公司Cortex-A7双核T113-i处理器,运行最高速度为1.2GHZ;

• 内置64位玄铁C906 RISC-V CPU和 DSP,提供高效的计算能力;

• 支持1080P 视频编码,多格式1080P 60fps视频解码 (H.265,H.264, MPEG-1/2/4)

• 支持LVDS/MIPI-DSI,分辨率最高1920x1080;

• 支持512-1G  Bytes DDR3 SDRAM;

• 支持SPI NAND启动和存储(256MB默认;512MB可选);可选EMMC启动和存储( 4G默认;8GB可选);

• 支持4路USB2.0 HOST和1路OTG,1路I2C,6路UART(RS232), 1路PWM(应用于背光)

• 支持双路CAN BUS通信

• 支持双路以太网,一路10/100M;一路10/100/1000M;

• 标准3.5寸主板, 尺寸为:146*102MM

SBC-T113功能评估图:

Qt5.12图形库配置说明(可选组件):

在T113-i_v1.0目录下执行如下命令编辑"platform/framework/qt/qt-everywhere-src-5.12.5/buildsetup_sf.sh"文件,可对Qt模块进行增加或删减。

备注:若无需编译增加或删减Qt模块,可跳过此章节。

Host$  viplatform/framework/qt/qt-everywhere-src-5.12.5/buildsetup_sf.sh

embfly@embfly-virtual-machine:~/T113/T113-i_v1.0$vi platform/framework/qt/

qt-everywhere-src-5.12.5/buildsetupsf.sh

如需删除Qt模块,在文件中添加“-skip+模块名 \”,例如删除qt3d模块,即“-skip qt3d \”。反之如需添加Qt模块,将“-skip+模块名 \”删除即可。

105-no-strip \

106-pch

107-dbus

108-no-use-gold-linker I

109-no-directfb \

110-no-eglfs \

111-linuxfb

112-no-kms

113-no-opengl

114-no-vulkan

115-no-system-proxies \

116-no-slog2 \

117-no-Pps

118-no-imf \

119-no-Lgmon

120-tslib

121-skip qt3d \

122-skip qtactiveqt \

123-skip qtandroidextras \

124-skip qtcanvas3d

125-skip qtconnectivity \

126-skip qtdatavis3d \

127-skip qtdoc

128-skip qtgamepad

129-skip qtlocation

130-skip qtmacextras

131-skip qtnetworkauth

132-skip qtpurchasing

133-skip qtremoteobjects '

参数解析:

-no:用于禁用某个模块或组件。

-skip:在构建过程中跳过某个组件的代码仓库。

请根据实际需求,删除文件中不需要的Qt模块,保存修改文件后,重新对Qt库进行编译即可。

编译Qt库(可选组件):

在T113-i_v1.0目录下执行如下命令,编译Qt库。

备注:若无需编译生成支持Qt功能的Linux系统镜像,可跳过此步骤。

Host#   ./build.sh qt

embfly@embfly-virtual-machine:~/T113/T113-i_v1.0$./build.sh qt

ACTIONList:mkqt

Executecommand: mkqt

INFO:build Qt ..

INFo:build arm-linux-gnueabi version's Qt

/home/embfly/T113/T113-t_v1.0/platform/framework/qt/qt-everywhere-src-5.12.5

table='/home/embfly/T113/T113-i_v1.0/out/t113_i/sbc-t113_nand/longan/butldroot/butld/butldroot-fs/full_devices_table.txt

make:Leaving directory /home/embfly/T113/T113-i_v1.0/buildroot/buildroot-201902

nake:Enteringdirectory /home/embfly/T113/T113-i_v1.0/platform

INFO:copy the config files form device..

Makefile:35

Makefile:36:/home/embfly/T113/T113-i_v1.0/platform

make:Nothing to be done for 'INSTALLFILES'

make:Leaving directory '/home/embfly/T113/T113-i_v1.0/platform

INFO:pregpu lib...

cp:cannotstat /home/embfly/T113/T113-i_v1.0/platform/core/graphics/gpu_um_pub/mali-bifrost/fbde

v/mali-g31/arm-linux-gnu/lib/*:No such ftle or directory

cp:cannotstat '/home/embfly/T113/T113-i_v1.0/platform/core/graphics/gpu_um_pub/mali-bifrost/fbde

v/mali-g31/arm-linux-gnu/lib/*':No such file or directory

INFO:build buildroot OK.

INFo:build Ot and buildroot Ok.

embfly@embfly-virtual-machine:~/T113/T113-i_v1.0$

执行如下命令,重新压缩根文件系统,将编译Qt生成的相关文件拷贝至文件系统。

Host#   ./build.sh rootfs

QT应用程序在SDK环境中的单独编译并黑盒调试:

我司LinuxSDK源码包提供了一些基于QT的应用程序代码,如果您暂时只是想编译验证他们,可通过如下指令进行编译并放到主板上运行。

我们以先进入到QT程序代码所在的目录SDK/platform/framework/auto/qt_demo(SDK表示的是SDK所在目录,一般是T113-i_v1.0),qt_demo目录下放的是不同的QT演示程序,我们这里以Launcher程序为例:

先进入到Launcher程序代码所在目录,指令如下:

Host$ cd /home/embfly/T113/T113-i_v1.0/platform/framework/auto/qt_demo

Host$cd Launcher/

Host$ls

bin    common image.qrc  Launcher.pro       Makefile      makeLauncher.bak  push_run.bat build  fonts  images     Launcher.pro.user  makeLauncher pushOnly.bat

其中每个QT程序代码目录下,都有单独编译程序的脚本,在Launcher代码中,这个编译脚本是makeLauncher。我们单独指令它就可以编译程序。makeLauncher脚本的内容是:

#!/bin/sh

PATH=$LICHEE_BR_OUT/host/bin/:$PATH

$QT_INSTALL_DIR/bin/qmake -oMakefile Launcher.pro

make -j6

exit $?

另外,每个QT程序代码目录下,也有把程序通过adb上传到主板的脚本和通过adb上传到主板并运行的脚本,在Launcher的代码中,这两个脚本分别是pushOnly.bat和push_run.bat,其中pushOnly.bat的内容如下:

adb shell killall Launcher    注解:先杀掉进程

adb push %~dp0bin/Launcher /   注解:把程序通过adb上传到主板的根目录下

adb shell chmod 777 /Launcher   注解:把程序更改为可运行的

pause

push_run.bat的内容如下:

adb shell killall Launcher  注解:先杀掉进程

adb push %~dp0bin/Launcher/usr/bin/  注解:把程序通过adb上传到主板的/usr/bin目录下

adb shell chmod 777

/usr/bin/Launcher注解:把程序更改为可运行的

adb shell . /etc/qtenv.sh  注解:配置QT运行环境

adb shell ./usr/bin/Launcher 注解:运行该程序

pause

如下我们介绍如何编译程序并把程序发送到主板上运行:

1)配置QT编译环境

Host$ source../../../../../.buildconfig

说明:这个buildconfig位于SDK所在目录,一般是T113-i_v1.0

2)编译QT程序

Host$ ./makeLauncher

3)上传到主板,并运行程序

Host$ ./push_run.bat

注意1:先编译好QT库,才可以进行QT程序的编译。

注意2:关于adb在linux下的安装可参考附录4-Ubuntu下adb工具的安装

注意3:adb可以向主板上传文件,也可以从主板上下载文件,指令如下:

adbpull<主板路径>   <开发主机路径>  从主板上中拉取信息到本地电脑上

adb push <开发主机路径>  <主板路径>  从本地电脑推送信息到主板上

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,406评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,732评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,711评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,380评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,432评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,301评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,145评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,008评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,443评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,649评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,795评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,501评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,119评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,731评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,865评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,899评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,724评论 2 354

推荐阅读更多精彩内容