QT5的移植與錯誤總結

來源:互聯網
上載者:User

今天有個項目要做儀錶盤的設計,需要用到QT5的QML來畫介面,所以移植了一下QT5.

主要參考部落格是:

http://blog.csdn.net/askeyes/article/details/8641161

http://blog.csdn.net/newthinker_wei/article/details/39560109

1.QT5.5.0的下載地址http://download.qt.io/official_releases/qt/5.5/5.5.0/single/

選擇qt-everywhere-opensource-src-5.5.0.tar.gz下載解壓


2。修改 qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf


3../configure -release -opensource -xplatform linux-arm-gnueabi-g++ -prefix /opt/Qt-5.5.0/armv7-a -no-c++11 -qreal float  


4.make -j2


5.make install -j2


6.在/opt/Qt-5.5.0/armv7-a/目錄下面產生lib  plugin  bin .等檔案夾

其中lib是QT5編譯用的庫,plugin是QT5所用的外掛程式,lib 和plugin目錄都要複製到板子裡面才可以運行QT程式。

其中bin裡面的qmake命令就是我們用來編譯QT5工程的命令


7.將lib和plugin目錄複寫到目標板中,並設定如下面環境變數

export QT_ROOT=/data

export LD_LIBRARY_PATH=/data/lib:$LD_LIBARAY_PATH
export QT_QPA_PLATFORM_PLUGIN_PATH=$QT_ROOT/plugins
export QT_QPA_PLATFORM=linuxfb:tty=/dev/fb0
export QT_QPA_FONTDIR=$QT_ROOT/lib/fonts
export LD_PRELOAD=/usr/lib/preloadable_libiconv.so:$TSLIB_ROOT/lib/libts.so
export QT_QPA_GENERIC_PLUGINS=tslib


8.在編譯好的例子中下載一個例如名字是rashterwindow的可執行QT程式,用命令執行:

./rashterwindow -qpa



錯誤總結:

在執行QT程式是出現如下錯誤

QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed

解決辦法:

參考連結:http://www.qtcn.org/bbs/simple/?t55852.html
     問題 3:./system/rootlib/helloworld -qws ,程式運行起來,仍報錯
           QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed
                   QIconvCodec::convertToUnicode: using Latin-1 for conversion, iconv_open failed
       解決 :下載 http://ftp.gnu.org/gnu/libiconv/libiconv-1.14.tar.gz   
                ./configure -prefix=$PWD/_install -host=arm-linux-gnueabihf   
                make   
                make install 
                把_install/lib 下的preloadable_libiconv.so 拷到系統的/system/lib 下,  
                export LD_PRELOAD=/system/lib/preloadable_libiconv.so



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.