- 論壇徽章:
- 0
|
以下是唯一一篇相關(guān)論文:
http://hi.baidu.com/smt%5F%C4%FE%BE%B2%D6%C2%D4%B6/blog/item/ad8e3cdfa76eba50cdbf1a19.html
[color="#0000ff"]本文是我在安裝QT的時(shí)候的一點(diǎn)過(guò)程及經(jīng)驗(yàn)總結(jié),希望能給后來(lái)人一點(diǎn)啟示。但是本人也是剛剛開(kāi)始學(xué)習(xí)QT,所以有不正確的還請(qǐng)大蝦們指出,我一定會(huì)認(rèn)真改正的。謝謝。
先讓我抒發(fā)一下安裝上qt的喜悅,哈哈。
從開(kāi)始看qt到成功的安裝上qt,中間過(guò)了差不多6 7天吧,有3 4
5天是一直在編譯,然后失敗,當(dāng)時(shí)用的是虛擬機(jī),速度太慢了,差不多要編譯3個(gè)小時(shí)吧,更是郁悶的不行,后來(lái)因?yàn)槭褂锰摂M機(jī)的時(shí)候我切換太快了導(dǎo)致CPU
處理出現(xiàn)問(wèn)題,一時(shí)處理不過(guò)來(lái)罷工了,CPU罷工不要緊,CPU保護(hù)導(dǎo)致顯卡溫度過(guò)高,finally,顯卡燒了。
顯卡燒了得換阿,不過(guò)也是因此耽擱了2天。這還得了,時(shí)間這么寶貴的資源豈能浪費(fèi),于是在換好顯卡后就不用虛擬己了,又換上了雙系統(tǒng)。(我的筆記本是戴爾的,呵呵,戴爾的服務(wù)就是快,今天報(bào)明天就來(lái)了,還行,贊一個(gè))
好了,喜悅就抒發(fā)到此為止,下面講我的安裝心得及經(jīng)驗(yàn)。
***********************************************************************************************
首先講一下我對(duì)QT各個(gè)版本的理解。
qtopia是基于qte的一個(gè)圖形界面。
qte是qt針對(duì)嵌入式系統(tǒng)作的一套軟件,具體的定義肯定不是這樣的,但是大家可以在網(wǎng)上搜到,我也就不詳細(xì)講了,我的理解就是
qtopia是qte函數(shù)的可視化界面。我的理解不一定是正確的,但是目前我掌握的資料導(dǎo)致了我的這個(gè)想法,歡迎大家提供新的資料讓我改變這個(gè)想法。
現(xiàn)在用的最多的是qtopia是2.2.0這個(gè)版本,后來(lái)公司被Nokia收購(gòu)后好像又有了什么變化,具體怎樣我也搞不清,如果有人有相關(guān)的文檔,還希望能提供一份,先在此謝謝了。
因?yàn)楦悴磺錻topia和QTE最新版本之間的聯(lián)系,所以無(wú)奈之下我用的qtopia2.2.0。(為什么無(wú)奈呢,因?yàn)槲艺J(rèn)為新版本肯定是想著更新以前的bug或者其他的錯(cuò)誤而推出的,所以會(huì)比以前好,因?yàn)槟切┏绦騿T都不是傻子,不會(huì)推出認(rèn)為不好的產(chǎn)品的。因此我盡量使用[color="#ff0000"]較新的版本,既然用不了,那就算了吧)
通過(guò)安裝Qtopia我的一點(diǎn)收獲是:
1、要有信心
2、時(shí)刻留意Linux系統(tǒng)中權(quán)限的問(wèn)題。
3、要大膽的修改源代碼。
網(wǎng)上很多講qtopia安裝的文章,而且qtopia2.2.0出來(lái)這么長(zhǎng)的時(shí)間了,應(yīng)該很完善了才對(duì),怎么會(huì)還有這么多錯(cuò)誤呢。
那是因?yàn)?不同的開(kāi)發(fā)環(huán)境編譯會(huì)出現(xiàn)不同的問(wèn)題。
關(guān)鍵在于編譯器,是編譯器的問(wèn)題(我不是計(jì)算機(jī)專(zhuān)業(yè)的,編譯原理也沒(méi)有學(xué)過(guò),關(guān)于此的相關(guān)事情我講不了太多,能做到會(huì)用我就很開(kāi)心了,呵呵)。不過(guò)出了錯(cuò)
誤可以根據(jù)錯(cuò)誤代碼一行一行的修改源代碼,這是韋東山教給我的經(jīng)驗(yàn)。
考慮到作為《嵌入式Linux應(yīng)用開(kāi)發(fā)完全手冊(cè)》的讀者,我打算用韋東山提供的代碼進(jìn)行安裝。
韋東山代碼的要求配置:
主機(jī)系統(tǒng):Ubuntu 7.10
編譯器版本:gcc/g++ 4.1.3;arm-linux-gcc/g++3.4.5
交叉編譯器自帶的庫(kù):glibc-2.3.6
但是我的主機(jī)是 ubuntu 8.04的版本
賭一把,完全按照書(shū)上講的做了后,結(jié)果是不成功。
暈...
我想難道是操作系統(tǒng)的問(wèn)題?我猜想不可能阿,于是我開(kāi)始對(duì)照錯(cuò)誤修改源代碼。
具體的錯(cuò)誤代碼我也記不請(qǐng)了,我就把具體意思大概說(shuō)一下。
找不到 qt2/bin/uic 文件
我網(wǎng)上找了一下,找到個(gè)能用的,放進(jìn)去重新make,進(jìn)行到一半,又失敗了,說(shuō)是哪找不到 類(lèi)名:: (具體的名字我忘了)
因?yàn)樾碌木幾g器會(huì)認(rèn)為 類(lèi)名::
來(lái)修飾成員函數(shù)是不正確的,因此將相關(guān)的代碼刪掉了,現(xiàn)在報(bào)錯(cuò)估計(jì)是調(diào)用了又去找了,我刪了怎么會(huì)能找到了。我看了一下原來(lái)是qtopia/src
/games下的文件,我想反正不用games,我就把相關(guān)文件刪掉了,刪掉還不行阿,還要把調(diào)用的相關(guān)代碼也刪掉。找了一下在
qtopia/src/project.pro中,刪掉就ok了。
make,又報(bào)錯(cuò)了,提示 multiple target patterns 。天哪...相關(guān)的這個(gè)文件是根據(jù)依賴(lài)關(guān)系自動(dòng)生成的,這個(gè)系統(tǒng)太大了,我找了半天網(wǎng)上也搜索相關(guān)的資料,還是不行。
于是決定放棄韋東山的這個(gè)版本。對(duì)友善還是有信心的,我再去使用一下友善的代碼,看看能不能成功,因?yàn)樵谘b韋東山的代碼的時(shí)候我想到了一開(kāi)始為什么我用友善的代碼出錯(cuò)誤了,那就是[color="#ff0000"]權(quán)限的問(wèn)題。
好那開(kāi)始使用友善的最新代碼。
也許韋東山的這個(gè)版本有點(diǎn)問(wèn)題吧,我也不清楚,反正我沒(méi)成功,我沒(méi)那么多時(shí)間重裝了,就此作罷。不過(guò)通過(guò)安裝韋東山的這個(gè)版本我更加深了一點(diǎn):[color="#ff0000"]要敢于修改源代碼。雖然最終沒(méi)解決問(wèn)題,但是之前相關(guān)的問(wèn)題都解決了。
之前使用友善的代碼解壓縮到/opt文件夾,文檔要求用戶(hù)使用fed9的系統(tǒng),我想一個(gè)操作系統(tǒng)而已嘛,
有什么要緊。后來(lái)才發(fā)現(xiàn),fed9是可以使用root帳戶(hù)的。期間牽扯到很多權(quán)限的問(wèn)題,而ubuntu
使用root權(quán)限的時(shí)候,環(huán)境變量也發(fā)生了變化,從而導(dǎo)致安裝出現(xiàn)了問(wèn)題。
建議:將相關(guān)的文件安裝到/home下,并改變相應(yīng)的權(quán)限,然后按照友善的提供文檔就可以成功了。不過(guò)hello下的build腳本要相應(yīng)的改變一下。
make
make install
后成功了,沒(méi)有提示錯(cuò)誤信息。但是我有點(diǎn)疑惑的是,網(wǎng)上有人說(shuō)安裝成功了出現(xiàn)了 enjoy ,但是我的沒(méi)出現(xiàn),難道還是錯(cuò)誤的?希望不要,待會(huì)我用開(kāi)發(fā)板驗(yàn)證一下。
現(xiàn)在回想,一個(gè)小小的問(wèn)題困了這么多天,就是個(gè)權(quán)限的問(wèn)題,哎...
另:缺少相關(guān)的庫(kù),及詳細(xì)的配置信息怎么處理我就不寫(xiě)了,網(wǎng)上很多的,幾乎沒(méi)什么區(qū)別,大家可以看看。當(dāng)然,最好是買(mǎi)本教材。
經(jīng)過(guò)多次的實(shí)驗(yàn),我發(fā)現(xiàn)問(wèn)題仍然很多。自己的解決方法:
安裝權(quán)限確實(shí)很重要,所以一定要在root用戶(hù)下安裝,而且要保證你的交叉編譯工具是4。4。3。這時(shí),肯定會(huì)設(shè)計(jì)到你的交叉編譯工具鏈不能用(只要是ubuntu)
解決方法:1.sudo -s
2.export PTAH=$PATH:/usr/local/arm/4.3.2/bin
3.解壓x86和arm到你想安裝的文件位置
4.進(jìn)入x86執(zhí)行./build-all一般不繪出問(wèn)題。執(zhí)行./run看到界面。ok!
5.進(jìn)arm執(zhí)行./build然后就行了。此時(shí)你的arm交叉編譯工具成功了
6.作者沒(méi)成功編譯瀏覽器(就是kong文件)而且不是很需要。這樣的編譯就夠用了。嘗試一下,進(jìn)入hello文件夾執(zhí)行./build編譯沒(méi)有人和錯(cuò)誤。ok!
本文來(lái)自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u3/109094/showart_2166587.html |
|