新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 嵌入式Linux下Qt/Embedded的應用

        嵌入式Linux下Qt/Embedded的應用

        作者: 時間:2012-04-05 來源:網絡 收藏

        用戶應用程序只需要調用FBIOXXXX來操作LCD硬件。

        嵌入式圖形界面GUI的移植

        交叉編譯和移植/
        文中采用了Trolltech公司的/2.3.6自由版作為目標板Linux圖形界面庫。在交叉編譯前需要先修改 /的配置文件,將GCC,G++編譯器和鏈接器設置為前文編譯安裝的交叉編譯工具鏈。接著是設置環境變量,如下:

        exportPATH=/opt/host/armv4l/bin:$PATH
        exportQTDIR=$PWD
        exportQTEDIR=$QTDIR
        exportLD-LIBRARY-PATH=$QTDIR/lib:$LD-LI2
        BRARY-PATH

        然后配置Qt/Embedded將Qt/Embedded配置為動態鏈接庫,并支持JPEG,JIF圖像格式,像素位數支持4,8,16,24。

        ./configure-xplatformlinux-arm-g++-shared-system-jpeg-gif-qvfb-depths4,8,16,24

        最后交叉編譯后,qt-2.3.6lib路徑下的生成EmbeddedQt的3個動態SO庫,分別是 libqte.so.2,libqte.so.2.3,libqte.so.2.3.6,將這些庫文件拷貝到目標板文件系統中(/s3c2410pro /root/usr/qt/lib)。與此同時在qt-2.3.6examples生成了Qt/Embedded的一些示例應用程序 (/s3c2410pro/root/usr/qt/examples/)。可以將一部分或全部程序拷貝到目標板文件系統。

        這樣當開發板啟動以后,就可以在嵌入式系統下運行基于Qt/Embedded的應用程序了。

        交叉編譯和移植Qtopia
        消費電子設備而開發的綜合應用平臺,它是基于Qt/Em2bedded圖形界面庫。Qtopia包括了窗口操作系統、游戲和多媒體、輸入法、工作輔助應用程序等特性。

        同Qt/Embedded交叉編譯一樣,首先需要先修改Qtopia的配置文件,將GCC,G++編譯器和鏈接器設置為 前文編譯安裝的交叉編譯工具鏈。

        接著是設置Qtopia環境變量,因為Qtopia是基于Qt/Embedded庫的,因此需要方才交叉編譯的動態鏈接庫的支持,需要同時設置Qt的環境變量。

        exportQTDIR=/linuette/host/Qt/embedded/qt-2.3.6
        exportLD-LIBRARY-PATH=/usr/lib:/lib:$QTDIR/lib:
        $LD-LIBRARY-PATH
        exportQPEDIR=/linuette/host/Qt/qpe/qpe-1.6.2
        exportPATH=/opt/host/armv4l/bin:$PATH
        exportTMAKEPATH=/usr/lib/tmake/lib/qws/linux-linuette-g++
        最后配置Qtopia將Qtopia配置為動態SO庫形式:
        ./configure-xplatformlinux-arm-g++-shared
        編譯make

        此時會出現/bin/uic:Commandnotfound的錯誤,這是因為沒有指定Qt/Embedded的uic工具,uic的工具是Qt專門用來將ui(ui文件是Qt圖形界面文件,支持所見即所得)文件生成.h和.cpp文件的。這里可以直接使用Qt/X11的uic工具,方法如下:在/qt- 2.3.6/bin目錄下建立到RedHat9.0自帶的QtX11的uic工具的鏈接。可以使用RedHat9.0下Qtdesigner(界面與 Delphi相類似)的應用程序開發嵌入式系統下的所見即所得的圖形界面應用程序。

        編譯通過后會在Qt/Embedded的路徑/qt-2.3.6/lib下生成libqpe1.6.2的動態鏈接庫,同樣將這些庫文件拷貝到目標板文件系統中(/s3c2410pro/root/usr/qt/lib)。在目標板文件系統目錄/s3c2410pro/root/usr下新建qpe文件夾,將/qpe-1.6.2/apps,/qpe-1.6.2/pics,/qpe-1.6.2/docs,/qpe-1.6.2/sounds復制到該文件夾下。最后修改目標板Linux的/profile文件,設置Qtopia的環境變量:

        exportPATH=/usr/qpe/bin:$PATH
        exportQWS-SIZE=6403480
        exportPATH=/usr/qpe/bin:$PATH

        開發板啟動后就會運行Qtopia圖形界面了。

        總結

        目前越來越多嵌入式系統要求圖形顯示界面,特別是在一些工業控制領域,系統的應用也逐漸增多。Qt/Embedded延續了Qt在桌面系統的所有功能,豐富的API接口和基于組件的編程模型使得系統中的應用程序開發更加便捷。由于Qt/Embedded本身面向高端的手持設備和移動設備,將成為未來嵌入式系統的主流GUI。

        linux相關文章:linux教程


        c++相關文章:c++教程



        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 江孜县| 登封市| 咸阳市| 长春市| 苍南县| 华坪县| 双牌县| 泾阳县| 伊金霍洛旗| 清水河县| 泸州市| 西青区| 南木林县| 周至县| 阿克苏市| 化州市| 靖西县| 田林县| 福清市| 灵宝市| 武夷山市| 满洲里市| 都江堰市| 横峰县| 福海县| 安仁县| 巴林左旗| 兴业县| 同江市| 晋宁县| 星子县| 荔波县| 辽源市| 梓潼县| 白山市| 东宁县| 沁阳市| 临武县| 罗平县| 南郑县| 普兰县|