自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

解析Qt 4.3.5 X11 交叉編譯平臺(tái)的搭建、移植

移動(dòng)開(kāi)發(fā)
本文所介紹的是關(guān)于Qt 4.3.5 X11 交叉編譯平臺(tái)的搭建、移植,基于平臺(tái)的Qt嵌入式,它是一個(gè)控制程序存儲(chǔ)在ROM中的嵌入式處理器控制板。

首先我們要知道的是Qt平臺(tái)有Pc開(kāi)發(fā)平臺(tái),(以本人所裝的Redhat9linux/Qt4.3.5/arm-3.4.1版本為例)首先我們要知道的是Qt平臺(tái)有Pc開(kāi)發(fā)平臺(tái),(以本人所裝的Redhat9linux/Qt4.3.5/arm-3.4.1版本為例)

一、Qt 嵌入式開(kāi)發(fā)平臺(tái)的建立

概述:Qt 嵌入式開(kāi)發(fā)平臺(tái)包括:

1、Qt-X11開(kāi)發(fā)平臺(tái):(即為我們平時(shí)開(kāi)發(fā)Qt應(yīng)用程序時(shí)使用的系統(tǒng)平臺(tái))。

2、Qt opiaCore-4.3.5開(kāi)發(fā)平臺(tái)(即framebuffer):該平臺(tái)可以讓Qt程序在pc機(jī)上模擬在嵌入式平臺(tái)的運(yùn)行情況,一般在Qt opiaCore上模擬運(yùn)行成功后才,進(jìn)行交叉編譯。

3、Qt opiaCore-4.3.5-arm交叉編譯平臺(tái):在此平臺(tái)下編譯通過(guò)的Qt程序就可以移植到arm板上運(yùn)行了。

step1:

建立Pc開(kāi)發(fā)平臺(tái)(x11、redhat9的桌面就屬于X11):

下載Qt4.3.5pc開(kāi)發(fā)包qt-x11-opensource-src-4.3.5.tar.gz

  1. #tar xzvf qt-x11-opensource-src-4.3.5.tar.gz  
  2. #cd Qt-4.3.5  
  3. #./configure    //  
  4. #make install   //此過(guò)程需要3-8小時(shí) 

安裝好后,系統(tǒng)默認(rèn)安裝在/usr/local/Trolltech/Qt-4.3.5目錄下

檢查環(huán)境變量:

  1. #which qmake     

step2:

建立Qt opiaCore-4.3.5編譯平臺(tái)(此時(shí)編譯器仍然用的是默認(rèn)的gcc)

此平臺(tái)下的安裝包原碼包和X11平臺(tái)是一樣的,只是configure時(shí)配置不同

  1. #tar xzvf qt-x11-opensource-src-4.3.5.tar.gz  
  2. #cd Qt-4.3.5  
  3. #./configure -embedded x86 -qvbf -no-openssl    
  4. //注意幾個(gè)選項(xiàng)表示,以qvfb表示  -no-openssl表示不需要認(rèn)證,否則會(huì)安裝過(guò)程中一直叫你輸入yes確認(rèn)  
  5. #make install         //此過(guò)程需要3-8個(gè)小時(shí) 

安裝完成后usr目錄多了一個(gè)文件夾/usr/local/Trolltech/QtopiaCore-4.3.5就表示安裝成功了

step3:

Qt optiaCore-4.3.5-arm交叉編譯平臺(tái)的建立(此時(shí)不是用系統(tǒng)默認(rèn)的gcc來(lái)編譯了),此平臺(tái)下的安裝源碼包X11平臺(tái)是一樣的,只是configure時(shí)配置不同

  1. #tar xzvf qt-x11-opensource-src-4.3.5.tar.gz  
  2. #cd Qt-4.3.5  
  3. #./configure -embedded arm   //注意幾個(gè)選項(xiàng),必須加上 -embedded arm選項(xiàng)  
  4. #make install         //此過(guò)程需要3-8個(gè)小時(shí) 

安裝完成后usr目錄多了一個(gè)文件夾/usr/local/Trolltech/QtopiaCore-4.3.5-arm就表示安裝成功了

step4:

設(shè)置環(huán)境變量:環(huán)境變量的設(shè)法總的說(shuō)來(lái)有4種(export、profile、.bashrc、.bashrc_profile)具體看自己情況來(lái)定

  1. #vi /root/.bash_profile  //在環(huán)境變量的最前面加上一句:PATH=/usr/local/Trolltech/QtopiaCore-4.3.5-arm/bin:$PATH  
  2. #source /root/.bash-Profile   //使環(huán)境變量生效 

好了平臺(tái)已經(jīng)搭建好了,可以用他來(lái)編譯Qt程序了

step5:

用QtopiaCore-4.3.5-arm來(lái)進(jìn)行交叉編譯

  1. #qmake -v  //檢查自己的qt環(huán)境變量是否正確,如果不正確的話,就返回第4步  
  2. #cd myqtprogram   //進(jìn)入自己寫(xiě)的qt程序  
  3. #qmake -project   //根QtX11環(huán)境一樣編譯  
  4. #qmake  
  5. #./myqtprogram    //運(yùn)行程序 

step6:

察看自己寫(xiě)的Qt程序需要用到哪些庫(kù)文件資源。

  1. #arm-linux-readelf -a -myqtprogram | grep Shared  //Shared首字母大寫(xiě); 

step7:

拷貝庫(kù)文件:

根據(jù)上一步提示把Qt程序要用到的資源文件拷到自己制作的根文件系統(tǒng)中,以下是按本人寫(xiě)的Qt程序所需要的庫(kù)寫(xiě)的

將程序移植到arm板運(yùn)行,根文件系統(tǒng)root.cramfs和kernel的制作在這里就不細(xì)說(shuō)了,本人用的是自己早做好的qt-root文件系統(tǒng)。

拷貝庫(kù)文件到自己制作的root系統(tǒng)中(注意:拷貝時(shí)一定要看看大小,千萬(wàn)不要拷到連接文件(相當(dāng)于快捷方式)了)

  1. #cd qt-root  
  2. #cd usr/lib    //注意這里不要進(jìn)到pc機(jī)linux的usr目錄下去了  
  3. #cp /usr/local/Trolltech/QtopiaCore-4.3.5-arm/lib/libpng*  ./  
  4.  
  5. //把圖形庫(kù)考過(guò)去,否則圖片顯示不了,強(qiáng)烈建議用png、bmp格式的圖片,用其他格式的圖片的話,否則你還要自己做連接庫(kù)  
  6.  
  7. #cp /usr/local/Trolltech/QtopiaCore-4.3.5-arm/lib/libQtCore.so libQtGui.so  ./     //這2個(gè)庫(kù)不用說(shuō)一定要考的  
  8. #cp /usr/local/Trolltech/QtopiaCore-4.3.5-arm/lib/libQtNetwork.so  ./           //和網(wǎng)絡(luò)相關(guān)的庫(kù)   
  9. #cp /usr/local/Trolltech/QtopiaCore-4.3.5-arm/lib/libstdc++.so  ./  
  10. #cd ../      
  11. //以下是在根文件系統(tǒng)qt-root/usr/local/下制增加一個(gè)Trolltech/QtopiaCore-4.3.5-arm/lib/fonts路徑目錄并添加相應(yīng)的字體文件,否則在arm板上會(huì)出錯(cuò)顯示不了字  
  12.  
  13. #mkdir local/Trolletch  
  14. #mkdir local/Trolletch/Qtopia-4.3.5-arm  
  15. #mkdir local/Trolletch/Qtopia-4.3.5-arm/lib  
  16. #cp /usr/local/Trolltech/QtopiaCore-4.3.5-arm/lib/fonts local/Trolletch/Qtopia-4.3.5-arm/lib  //注意不要拷錯(cuò)路徑了 

step8:

把程序下載到arm板運(yùn)行(注意:本人是用的microsoft的附件/通訊工具/超級(jí)終端連接到板子上,以下的操作對(duì)象都是在板子上了)

  1. #./ln -s /dev/fb/0 /dev/fb0  //由于本人的板子上燒的root文件系統(tǒng)顯示設(shè)備名稱和路徑都不匹配,所以只有給他做個(gè)連接了,否則運(yùn)行時(shí)會(huì)提示找不到fd0  
  2. #./myqtprogram -qws   //-qws表示以服務(wù)器模式運(yùn)行 

現(xiàn)在可以了,能在本子上跑起來(lái)了。

【編輯推薦】

QT 4應(yīng)用程序解析

深度解析嵌入式QT開(kāi)發(fā)環(huán)境搭建

測(cè)試自動(dòng)化 淺談QTP腳本的重用

嵌入式系統(tǒng)開(kāi)發(fā)過(guò)程中的常見(jiàn)問(wèn)題

 Linux下應(yīng)用程序開(kāi)發(fā)之QT的信號(hào)與槽機(jī)制

責(zé)任編輯:zhaolei 來(lái)源: 網(wǎng)絡(luò)轉(zhuǎn)載
相關(guān)推薦

2011-07-04 15:13:31

QT MPlayer 移植

2011-06-28 13:47:37

Embedded QT ARM

2011-06-24 08:46:37

Linux Qt x11 4.5

2021-08-31 09:58:52

ChromeChromiumOzone

2011-09-06 10:36:10

QT平臺(tái)

2011-06-23 18:04:42

Qt Embedded

2011-06-23 18:16:59

Qt Qtopia

2011-06-23 16:24:21

Qt Embedded 交叉編譯

2011-06-08 15:27:24

QT QT 4.5 編譯

2011-06-09 15:18:07

QT 編譯

2011-07-04 10:56:10

Qt 移植 編譯

2010-02-25 17:28:56

Fedora Moon

2011-06-13 14:49:57

Qt Designer

2011-06-29 10:46:01

Qt Eembedded Linux

2023-10-09 08:59:12

X11轉(zhuǎn)發(fā)Linux

2011-06-24 13:08:34

Qt Qt 4.5.3 移植

2011-06-30 16:08:05

Qt 字庫(kù) QPF

2011-06-30 15:51:39

2023-01-09 15:11:23

LinuxVulkan X11

2011-06-09 14:56:53

QT 編譯
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)