0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

英創(chuàng)信息技術(shù)支持OpenGL的Qt應(yīng)用程序開發(fā)介紹

英創(chuàng)信息技術(shù) ? 來源:英創(chuàng)信息技術(shù) ? 作者:英創(chuàng)信息技術(shù) ? 2020-02-03 09:53 ? 次閱讀

英創(chuàng)嵌入式工控主板EM335x的CPU選用了Cortex-A8 處理器,主頻為1GHz的AM3354,這一款CPU中帶有硬件浮點(diǎn)協(xié)處理器(VFP、NEON),具有硬件2D/3D圖形加速器(OpenGL)。接下來就為大家介紹如果在EM335x上使用此功能。

英創(chuàng)公司在Linux環(huán)境下所提供的界面編程可以通過Qt來實(shí)現(xiàn),為了讓圖形加速的功能能夠被用戶所使用,英創(chuàng)公司配合圖形加速相關(guān)的庫文件重新移植了Qt,編譯成支持圖形加速功能的Qt版本,讓用戶可以通過Qt Creator直接開發(fā)帶有加速功能的Qt應(yīng)用程序,并且在根文件系統(tǒng)中也對Qt庫和C庫的版本進(jìn)行了更新以支持圖形加速的功能。所以要使用圖形加速功能,需要燒寫專用的內(nèi)核版本和文件系統(tǒng),注意EM335x的圖形加速功能基于OpenGL的版本為OpenGL ES2.0,所以在程序中使用的API需對應(yīng)為ES2.0版本。接下來我們就來看看開發(fā)帶圖形加速功能的Qt程序需要如何搭建開發(fā)環(huán)境。

本文主要介紹如何搭建環(huán)境來開發(fā)帶圖形加速功能的Qt程序,如果不需要圖形加速功能,請參考文章:《Qt開發(fā)環(huán)境的搭建》來搭建開發(fā)環(huán)境。

1、安裝交叉工具鏈

首先需要安裝交叉工具鏈,和普通程序開發(fā)不同,編譯啟動了圖形加速功能的例程需要使用支持硬件浮點(diǎn)數(shù)的交叉工具鏈版本,英創(chuàng)公司以提供給用戶一個(gè)名為sysroots.tar.bz2的交叉工具鏈壓縮包,首先使用命令:

#tar vxjf sysroots.tar.bz2

解壓。

然后執(zhí)行腳本進(jìn)行安裝:
#cd sysroots
#./install.sh

安裝完成后,可以進(jìn)入到/sysroots/i686-arago-linux/usr/bin/目錄下,執(zhí)行:
#./arm-linux-gnueabihf-gcc -v

查看版本信息。

安裝交叉工具鏈

這樣交叉工具鏈就安裝好了。

2、安裝Qt環(huán)境

英創(chuàng)公司已經(jīng)將編譯好的帶OpenGL功能的Qt庫打包提供給客戶,客戶只需要將壓縮包拷貝到開發(fā)主機(jī)上,解壓,然后執(zhí)行英創(chuàng)公司編寫好的腳本程序,就能夠正常使用了。壓縮包的名稱為qt-opengl.tar.bz2,拷貝到開發(fā)主機(jī)上,先進(jìn)行解壓,和之前的解壓方法相同:
#tar vxjf qt-opengl.tar.bz2

解壓完成后,進(jìn)入到Qt的目錄中,執(zhí)行命令
#./install.sh

進(jìn)入到Qt的bin目錄下,可以查看版本和路徑,使用命令
#./qmake -v

這樣就完成了Qt進(jìn)行的安裝。

3、Qt creator配置

關(guān)于Qt creator的安裝等說明請參考文章,安裝的步驟完全相同:《Qt開發(fā)環(huán)境的搭建》,這里主要介紹如何配置編譯的環(huán)境,首先添加編譯器,在菜單項(xiàng)中選擇“Tools→Options”,然后選擇“Build&Run”項(xiàng),點(diǎn)擊Compilers一項(xiàng),這里使用第一步安裝的arm-linux-gnueabihf,單擊右上角的“Add”按鈕,選擇GCC,然后添加編譯器路徑(需要指定到g++文件),完成后單擊“Apply”按鈕保存設(shè)置。注意所使用的交叉工具鏈中g(shù)++文件所在的路徑應(yīng)該為sysroots/i686-arago-linux/usr/bin/arm-linux-gnueabihf-g++。

添加編譯器

接下來添加Qt版本,Qt版本需要選擇第二步中安裝好的Qt環(huán)境,添加Qt版本的方法很簡單,點(diǎn)'Qt Version'選項(xiàng)。單擊右上方的“Add”按鈕,然后選擇Qt環(huán)境的目錄,指定到qmake文件即可。

添加Qt版本

最后選擇到“Kits”項(xiàng)中,可以看到已經(jīng)有一個(gè)“Desktop(default)”,直接雙擊它進(jìn)行修改或者新建一個(gè)構(gòu)建套件,名稱可以自由命名,編譯器選擇之前設(shè)置好的交叉編譯工具,Qt版本選擇之前添加好的qt-opengl這一項(xiàng),完成后單擊“OK”按鈕保存退出。

配置構(gòu)建套件

這樣,Qt Creator就已經(jīng)配置完成,可以用來進(jìn)行開發(fā)Qt程序了,開發(fā)完成后只需要將編譯生成的可執(zhí)行文件拷貝到nandflash中,就可以執(zhí)行了。接下來我們就來運(yùn)行一個(gè)使用了圖形加速功能的Qt例程。

4、運(yùn)行Qt例程

開發(fā)環(huán)境搭建完成了,現(xiàn)在就來介紹如何運(yùn)行帶有圖形加速功能的Qt程序,首先需要啟動CPU的圖形加速功能,這一步最主要的工作是加載一些必須的模塊和庫,這些所需要的操作都通過腳本實(shí)現(xiàn)了,用戶只需要在命令行執(zhí)行腳本即可:
#/etc/init.d/rc.pvr start

看到如上圖的效果,就說明腳本運(yùn)行成功。我們可以在這張主板中運(yùn)行帶圖形加速功能的Qt程序來檢測功能是否正常啟動,這里可以運(yùn)行官方提供的一個(gè)名為hellogl_es2基于OpenGL ES2.0的Qt例程。運(yùn)行帶圖形加速功能的Qt例程時(shí),除了增加參數(shù)-qws以外,還需要增加參數(shù)-display powervr才能夠正常運(yùn)行程序:
#hellogl_es2 -qws -display powervr

程序運(yùn)行效果

如果需要開機(jī)自動啟動帶圖形加速功能的Qt程序,需要使用腳本來實(shí)現(xiàn),腳本的編輯方法請參考:《英創(chuàng)嵌入式主板Qt Embedded應(yīng)用簡介》這篇文章中的第四點(diǎn)。請注意的是,腳本中需要將啟動CPU圖形加速功能的這條命令加入。

由于程序中的API涉及到OpenGL相關(guān)的圖形程序接口,專業(yè)性較強(qiáng),在這里就不做詳細(xì)的介紹了,更多的例程可以在Qt的官方網(wǎng)站中下載和參考。使用圖形加速共能要燒寫專用的內(nèi)核版本,所以如果需要使用圖形加速功能,在購買時(shí)請向英創(chuàng)公司說明。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11329

    瀏覽量

    209970
  • 嵌入式主板
    +關(guān)注

    關(guān)注

    7

    文章

    6086

    瀏覽量

    35486
收藏 人收藏

    評論

    相關(guān)推薦

    基于QT開發(fā)國產(chǎn)主板終端桌面程序 高效、穩(wěn)定、跨平臺的解決方案

    開發(fā)者們面臨的一個(gè)重要挑戰(zhàn)。本文將介紹如何基于QT框架,開發(fā)適用于國產(chǎn)主板的終端桌面程序,并探討其優(yōu)勢和應(yīng)用場景。
    的頭像 發(fā)表于 01-08 15:34 ?105次閱讀

    ToDesk——安全、高效、更專業(yè)的遠(yuǎn)程技術(shù)支持(一)

    更適合企業(yè)的高效技術(shù)支持 為您的公司構(gòu)建統(tǒng)一的技術(shù)支持平臺,提高效率,規(guī)范管理,保護(hù)信息架構(gòu)。 破解多分支多廠區(qū)難題,一站式解決員工桌面支持、機(jī)房運(yùn)維、外部供應(yīng)商合規(guī)接入 ToDesk
    的頭像 發(fā)表于 01-08 09:30 ?72次閱讀
    ToDesk——安全、高效、更專業(yè)的遠(yuǎn)程<b class='flag-5'>技術(shù)支持</b>(一)

    飛騰助力首屆教育信息技術(shù)應(yīng)用創(chuàng)新大賽圓滿落幕

    近日,由中國教育技術(shù)協(xié)會主辦,教育部教育管理信息中心教育信創(chuàng)實(shí)驗(yàn)室、公安部第三研究所、中國電子工業(yè)標(biāo)準(zhǔn)化技術(shù)協(xié)會信創(chuàng)工委會
    的頭像 發(fā)表于 12-24 09:57 ?170次閱讀

    龍芯中科助力2024首屆教育信息技術(shù)應(yīng)用創(chuàng)新大賽成功舉辦

    近日,2024首屆教育信息技術(shù)應(yīng)用創(chuàng)新大賽在北京航空航天大學(xué)成功舉辦。本次大賽由中國教育技術(shù)協(xié)會主辦,教育信創(chuàng)實(shí)驗(yàn)室、公安部第三研究所、中國電子工業(yè)標(biāo)準(zhǔn)化技術(shù)協(xié)會信
    的頭像 發(fā)表于 12-19 17:02 ?260次閱讀

    AWTK-WEB 快速入門(2) - JS 應(yīng)用程序

    導(dǎo)讀AWTK可以使用相同的技術(shù)開發(fā)各種平臺的應(yīng)用程序。有時(shí)我們需要使用Web界面與設(shè)備進(jìn)行交互,本文介紹一下如何使用JS語言開發(fā)AWTK-
    的頭像 發(fā)表于 12-05 01:04 ?137次閱讀
    AWTK-WEB 快速入門(2) - JS <b class='flag-5'>應(yīng)用程序</b>

    AWTK-WEB 快速入門(1) - C 語言應(yīng)用程序

    導(dǎo)讀AWTK可以使用相同的技術(shù)開發(fā)各種平臺的應(yīng)用程序。有時(shí)我們需要使用Web界面與設(shè)備進(jìn)行交互,本文介紹一下如何使用C語言開發(fā)AWTK-W
    的頭像 發(fā)表于 11-27 11:46 ?253次閱讀
    AWTK-WEB 快速入門(1) - C 語言<b class='flag-5'>應(yīng)用程序</b>

    中科創(chuàng)達(dá)榮獲2024年軟件和信息技術(shù)服務(wù)優(yōu)秀企業(yè)

    及前百家企業(yè)”名單。中科創(chuàng)達(dá)憑借非凡的技術(shù)實(shí)力與持續(xù)的創(chuàng)新能力,成功入選“2024年度軟件和信息技術(shù)服務(wù)競爭力百強(qiáng)企業(yè)”以及“2024年軟件和信息技術(shù)服務(wù)優(yōu)秀企業(yè)”。
    的頭像 發(fā)表于 10-30 11:44 ?521次閱讀

    RFID手持終端的無線技術(shù)支持

    在現(xiàn)代供應(yīng)鏈管理和資產(chǎn)管理中,RFID(射頻識別)技術(shù)發(fā)揮著越來越重要的作用。RFID手持終端作為這一技術(shù)的關(guān)鍵組成部分,其無線技術(shù)支持是實(shí)現(xiàn)高效數(shù)據(jù)采集和處理的基礎(chǔ)。 一、RFID手持終端
    的頭像 發(fā)表于 10-29 09:38 ?277次閱讀

    銳恩科技,以實(shí)力打造國產(chǎn)單片機(jī)替代品牌!

    科技深諳市場需求的多樣性,因此提供靈活的定制化服務(wù)。他們可以根據(jù)客戶的具體需求,定制開發(fā)符合特定應(yīng)用場景的單片機(jī)產(chǎn)品,幫助客戶快速實(shí)現(xiàn)產(chǎn)品升級和技術(shù)創(chuàng)新。 5、強(qiáng)大的技術(shù)支持銳恩
    發(fā)表于 09-25 09:49

    加速鯤鵬落地!拓維信息創(chuàng)遷移工具榮獲鯤鵬原生開發(fā)技術(shù)認(rèn)證

    認(rèn)證。圖/拓維·數(shù)據(jù)庫適配中間件取得鯤鵬原生開發(fā)N認(rèn)證在數(shù)字化時(shí)代的大潮中,信創(chuàng)戰(zhàn)略作為國家推動信息技術(shù)應(yīng)用創(chuàng)新、保障信息安全與自主可控的關(guān)鍵舉措,其重要性日益凸顯
    的頭像 發(fā)表于 09-10 08:03 ?482次閱讀
    加速鯤鵬落地!拓維<b class='flag-5'>信息</b>信<b class='flag-5'>創(chuàng)</b>遷移工具榮獲鯤鵬原生<b class='flag-5'>開發(fā)</b><b class='flag-5'>技術(shù)</b>認(rèn)證

    嵌入式QT常見開發(fā)方式有哪些?

    嵌入式QT常見開發(fā)方式有哪些? 嵌入式工程師在學(xué)習(xí)和使用Qt進(jìn)行開發(fā)時(shí),常見的幾種開發(fā)方式包括: 1.
    發(fā)表于 08-12 10:05

    在嵌入式系統(tǒng)中集成Rust和Qt的實(shí)踐

    Rust 擁有豐富的庫生態(tài)系統(tǒng),用于序列化和反序列化、異步操作、解析不安全輸入、線程、靜態(tài)分析等,而 Qt 是一個(gè) C++ 工具包,支持跨各種平臺的豐富的、基于 GUI 的應(yīng)用程序,從 iOS 到嵌入式Linux。
    發(fā)表于 05-03 10:26 ?1859次閱讀
    在嵌入式系統(tǒng)中集成Rust和<b class='flag-5'>Qt</b>的實(shí)踐

    Qt上位機(jī)開發(fā)實(shí)戰(zhàn)案例

    Qt框架的開發(fā)人員能迅速上手和操作。 即使不開發(fā)Qt應(yīng)用程序,Qt Creator也是一個(gè)
    的頭像 發(fā)表于 03-13 12:31 ?2693次閱讀
    <b class='flag-5'>Qt</b>上位機(jī)<b class='flag-5'>開發(fā)</b>實(shí)戰(zhàn)案例

    RX78M組 EtherCAT ETG.5003示例程序固件信息技術(shù)

    電子發(fā)燒友網(wǎng)站提供《RX78M組 EtherCAT ETG.5003示例程序固件信息技術(shù).pdf》資料免費(fèi)下載
    發(fā)表于 02-21 14:22 ?1次下載
    RX78M組  EtherCAT ETG.5003示例<b class='flag-5'>程序</b>固件<b class='flag-5'>信息技術(shù)</b>

    Qt For OpenHarmony圖形化的進(jìn)展突破

    Qt 適配 OpenHarmony 意義 Qt 是一個(gè) C++ 跨平臺開發(fā)框架,主要用于開發(fā)圖形用戶界面(Graphical User Interface,GUI)
    的頭像 發(fā)表于 02-02 14:29 ?1599次閱讀
    <b class='flag-5'>Qt</b> For OpenHarmony圖形化的進(jìn)展突破