qt-4.7.2
及qtembedded-4.7.2
在ubuntu11.10
下的安裝」後續,主要參考:部落格
,同樣,參照他的部落格中關於
dm365
下的移植來做,我又遇到了新的問題,主要的問題出現在
configure
上,按照他的
configure
引數配置成
arm版本的
qt庫後,我編譯的
helloworld
程式,在開發板上執行時,出現只顯示乙個綠底的小滑鼠,同時
cpu佔用率高達
97%的問題,後來在
csdn
論壇裡,發現導致這一問題的原因可能出現在
configure
上,configure
中的某些配置引數可能在我的開發板環境下不支援,參照其他
configure
安裝後,
helloworld
移植成功,步驟如下:
1.解壓qt
原始碼包qt-everywhere-opensource-src-4.7.2.tar.gz
至~/qt/qt-everywhere-opensource-src-4.7.2
目錄後,進入該目錄,拷貝
~/qt/qt-everywhere-opensource-src-4.7.2/mkspecs/qws/linux-arm-g++
目錄至~/qt/qt-everywhere-opensource-src-4.7.2/mkspecs/qws/linux-dm365-g++
,並修改
~/qt/qt-everywhere-opensource-src-4.7.2/mkspecs/qws/linux-dm365-g++
目錄下的
qmake.conf
檔案,修改所有的「
arm-linux-」
為dm365
的交叉編譯工具鏈「
arm_v5t_le-」(vi
下可用「:
%s/arm-linux-/arm_v5t_le-」
替換功能)。 2.
在~/qt/qt-everywhere-opensource-src-4.7.2
目錄下,配置生成
makefile
檔案$./configure -prefix /usr/local/trolltech/qtem-4.7.2-dm365_v2 -opensource -confirm-license -embedded arm -release -shared -fast -no-largefile -no-qt3support -qt-libtiff -qt-libpng -qt-libjpeg -make tools -nomake examples -nomake docs -nomake demos -no-cups -********** -xplatform qws/linux-dm365-g++ -no-qvfb -no-webkit
說明:-prefix/usr/local/trolltech/qtem-4.7.2-dm365 (make install
安裝路徑)
-opensource
(自由版本)
-confirm-license
(遵守協議)
-embeddedarm
(嵌入式
arm)
-release
(編譯和鏈結
qt時關閉除錯)
-shared
(使用qt
動態庫)
-fast
(只對庫及子目錄
make
來快速配置qt)
-no-largefile
(使大檔案支援無效)
-no-qt3support
(關閉qt3
支援功能)
-qt-libtiff
(使用tiff庫)
-qt-libpng
(使用png庫)
-qt-libjpeg
(使用jjpeg庫)
-maketools
(編譯tools)
-nomakeexamples
(不編譯
examples)
-nomakedocs
(不編譯
docs)
-nomakedemos
(不編譯
demos)
-no-cups
(不編譯
cups)
-**********
(編譯qt
多**模組)
-xplatformqws/linux-arm-g++
-no-qvfb
(不編譯
qvfb
模組)
-no-webkit
(不編譯
webkit
用了上面的
configure
後,我的
helloworld
測試程式在
dm365
開發板上就可以跑起來了,而且
cpu佔用率也低了下來,我沒有仔細研究之前到底是哪乙個引數導致的問題,另外,我的
lcd不帶觸控螢幕功能,因此沒有加入觸控螢幕相關配置(原部落格中有),而且我認為以後真正介面做起來後需要其他的功能可能還需要回來研究修改
configure
,總之一步一步邊做邊學,先把當前問題解決,繼續向下,
configure
後就和之前在
x11平台下安裝一樣了
$make
$make install
(同樣,
make
這步時間比較長,
makeintsall
可能需要加
sudo
)安裝完成後,就可以在
configure
下指定的安裝目錄中看到安裝檔案了,我這裡是
/usr/local/trolltech/qtem-4.7.2-dm365
。3.qt
庫的移植及環境變數的配置
拷貝安裝目錄下
lib庫中的所有檔案
/usr/local/trolltech/qtem-4.7.2-dm365/lib
至dm365
開發板檔案系統相對應的目錄下,我這裡是
~/dm365/filesys/usr/local/trolltech/qtem-4.7.2-dm365/lib
,建議將
lib打包壓縮後拷貝。修改開發板檔案系統中
/etc/profile
檔案,加入:
exportset qtdir=/usr/local/trolltech/qtem-4.7.2-dm365
exportpath=$qtdir:$path
exportld_library_path=$qtdir/lib:$ld_library_path
exportqws_display=linuxfb:/dev/fb0
exportqws_size=320*240
exportqws_display="linuxfb:mmwidth50:mmheight65:0"
exportqws_sw_cursor
exportqt_plugin_path=$qtdir/plugins/
exportqt_qws_fontdir=$qtdir/lib/fonts
到這裡,
qt環境的移植工作就完成了,下面來進行測試。
4.helloworld
工程,當然也要先在「工具」
-->「
選項」-->「qt4」-->「qt
版本」中設定新的
qmake
helloworld
工程前同樣需要在「專案」
-->「
構建設定」中選擇
qt-4.7.2-dm365的qt
版本,「執行設定」中新增引數「
-qws」
。編譯好後將生成的
helloworld
工程目錄拷貝到
dm365
開發板檔案系統中,即可執行。
最後,要感謝
csdnqt
論壇裡遇到過此類問題的前輩,看了你們的帖子才意識到問題的可能所在,尤其感謝
id為「
zw545378330
」
的朋友,給了我他的
configure
配置為參考。
andy-binary
在KEIL 4 72中使用STM32的3 5韌體庫
1.先按照常規新建工程,注意最後提示是否複製啟動檔案到目錄下時,選擇否。3.在工程所在的資料夾目錄下新建三個資料夾lib core user。其中core用來存放3.5版本韌體庫的啟動檔案,lib用來存放庫函式的源 user則用來存放主函式 4.開啟韌體的壓縮包,按如下步驟複製檔案到對應的資料夾下。...
在Qt中使用sleep
在qt中使用sleep 關於sleep函式,我們先來看一下他的作用 sleep函式是使呼叫sleep函式的執行緒休眠,執行緒主動放棄時間片。當經過指定的時間間隔後,再啟動執行緒,繼續執行 sleep函式並不能起到定時的作用,主要作用是延時。在一些多執行緒中可能會看到sleep 0 其主要目的是讓出時...
在Qt工程中加Boost
每個qt工程都有乙個 pro 檔案。我們需要在這個檔案裡指定boost路徑。比如,在我的電腦上,boost解壓出來的檔案目錄在 f boost 1 52 0 那麼,我們要將這個路徑加入到工程的頭檔案目錄中去。如下 qt core qt gui includepath f boost 1 52 0 t...