久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

qt/embedded交叉編譯時(shí)一些配置選項(xiàng)的介紹

 guitarhua 2011-12-05
qt/embedded交叉編譯時(shí)一些配置選項(xiàng)的介紹
2011-04-17 18:38

原文網(wǎng)址:

http://www./zouzheng/archive/2010/07/06/67199.html

當(dāng)進(jìn)入解壓好的源碼包后,,使用./configure –help命令,,可以獲得相應(yīng)幫助,,那我們只要選取參數(shù)部分看看

1. 

-release

這個(gè)參數(shù)顯而易見,就是編譯Qt以發(fā)布版的模式進(jìn)行,,一般來說,,最后系統(tǒng)完成后,庫就應(yīng)該是發(fā)布版,。

-release

與上面對應(yīng),,自然是調(diào)試版了,如果開發(fā)的話,,可以選擇它吧,。

-debug-and-release

囧,上面那兩個(gè)的兒子,。

-developer-build

囧,,我錯(cuò)了,開發(fā)者也可以用這個(gè)的,,選了這個(gè)后,,可以進(jìn)行自動測試,不過還沒去用過,,以后可以研究研究,。

-opensource

-commercial

這兩個(gè)參數(shù)是指是編譯是商業(yè)版本的,還是開源版本呢,,視個(gè)人情況而定,。

2.

-shared

-static

這兩個(gè)參數(shù)是指Qt的lib以動態(tài)還是靜態(tài)編譯生成,這自然也是視個(gè)人需要的,。

3.

-no-fast

-fast

這兩個(gè)就很有關(guān)系,,如果對自己的電腦性能很有信心,那就選第一個(gè),,那所有的工程文件都會生成到makefiles中,那編譯的時(shí)間,,估計(jì)可以看完變形金剛了,。如果選第二個(gè),那就加入子目錄和庫到makefiles,,這樣就能加快編譯的速度,。

4.

-no-largefile

-largefile

顧名思義,支不支持大文件,,一般來說,,嵌入式里是不會有從超過4G的大文件的,那就選第一個(gè)吧,。

5.

-no-exceptions

-exceptions

計(jì)算機(jī)英語夠好的人都該懂,,這個(gè)自然就是異常情況,,選則編譯器支持拋出異常,否則不支持,。

6.

-no-accessibility

-accessibility

可訪問性的支持,,說實(shí)話,這個(gè)我真不知道有什么有用了,。等哪天發(fā)現(xiàn)了,,再來好好解釋。

7.

-no-stl

-stl

是都加入stl的支持,,stl,,這應(yīng)該算是C++程序員應(yīng)該都了解了,再不濟(jì),,那也總聽說過大名吧,。

8.

no-sql-<driver>
-qt-sql-<driver>
-plugin-sql-<driver>

這 個(gè)可要好好說明下,一般來說,,對于一個(gè)優(yōu)秀的項(xiàng)目開發(fā),,數(shù)據(jù)庫是必不可少的,qt也自帶了大多數(shù)數(shù)據(jù)庫驅(qū)動,,可以完美地支持?jǐn)?shù)據(jù)庫的使用,。對于數(shù) 據(jù)庫的使用,我們可以直接qt驅(qū)動編譯進(jìn)去,,或者以插件的形式編譯進(jìn)去,。一般來說,最簡單地就是直接編譯進(jìn)去,,但使用插件形式的可以更加靈活,,針對不同的 需求將驅(qū)動插件添加。其中,,<>代表的是驅(qū)動名,,如果我想直接添加sqlite的支持話,形式如下:-qt-sql-sqlite,。其他名稱 可以自己查看參數(shù)里,,有詳細(xì)地介紹。

9.

-system-sqlite

sqlite真受歡迎啊,,當(dāng)然那么優(yōu)秀的嵌入式數(shù)據(jù)庫,,本人也是基本使用它來進(jìn)行開發(fā)。這個(gè)參數(shù)意思是使用操作系統(tǒng)上的sqlite數(shù)據(jù)庫,,如果是不太會移植的,,可以考慮直接使用qt自帶的驅(qū)動。

10.

-no-qt3support

-qt3support

這個(gè)也是簡潔易懂,,加不加對qt3的支持,。

11.

no-xmlpatterns

-xmlpatterns

選擇對xml的支持,,如果對網(wǎng)絡(luò)無需求的話,就不用加了,。

12.

-no-phonon

-phonon

phonon是qt中處理多媒體的模塊,,比如放放視頻什么來著,不過本人從沒用過,,也是根據(jù)需要選擇的,。

13.

-no-phonon-backend
-phonon-backend
與上面類似,只不過這兩是以插件的形式加入支持,。

14.

-no-svg

-svg

是否加入svg的支持,,svg即可縮放矢量圖形。

15.

-no-webkit

-webkit

是否加入webkit的支持,,這可是個(gè)好東西,,不過如果跟網(wǎng)絡(luò)不搭界的話,還是不支持吧,。

16.

-no-scripttools

-scripttools

是否加入腳本工具的支持,,這對php等腳本工程師來說是個(gè)很棒的參數(shù),但對于我這樣菜鳥,,就別提了,。

17.

-platform target

目標(biāo)平臺,這可是關(guān)鍵了,,如果不注意的話,,編譯出來是x86上的話,哪怕是再牛的嵌入式工程師來也沒法幫你移植到開發(fā)板上,。通常,,本人是linux-arm-g++。
18.

-no-mmx

-no-3dnow

-no-sse

-no-sse2

這四個(gè)參數(shù)是針對CPU的指令集,,老實(shí)說,,我也不甚了解,不過,,對于開發(fā)并不是影響很大,。

19.

-qtnamespace

把qt的庫封裝到命名空間,沒啥重要用處,,依個(gè)人愛好加吧。

20.

-qtlibinfix

將所有的qt的.so庫重命名,,也沒啥大用處,。

21.

-no-sql-<driver>

-qt-sql-<driver>
-plugin-sql-<driver>
-system-sqlite

這是相當(dāng)明顯的,如果這都看不出來,,,,囧,,那您一定比我近視(本人800度近視。,。)

就 是說如果是-no-XX-,,就說明編譯時(shí)不選擇這個(gè)參數(shù),如過是-qt-XX-,,說明我們可以編譯直接選用qt自帶的驅(qū)動,,如果是 -plugin-XX-,就是將驅(qū)動以插件形式編譯,,而-system-XXX,當(dāng)然是使用操作系統(tǒng)提供的驅(qū)動,,不過那就需要您自己移植了,而且有時(shí)還要 用第三方的API,,就方便來說非常麻煩,,但是不排除您是牛人要好好玩玩的情況。

22.

接下來,,我們接著研究配置參數(shù),。

-qt-zlib

-system-zlib

想 必經(jīng)過上面的講解,參數(shù)的意思已經(jīng)很快得知,,就是選擇qt帶的zlib庫還是系統(tǒng)的zlib,。zlib庫是用于文件和資料壓縮的庫,對于新入嵌入式的人來 說,,可能并無太大的用處,,但是在以后的實(shí)際開發(fā)中,特別是對于多媒體圖像圖形的工程師來說,,就肯定用到,,因?yàn)閳D形圖像的壓縮都要使用或涉及到這個(gè)庫。

23.

-no-gif
-qt-gif

這是選擇gif的支持,,如果選擇qt支持的話,,那在用qt開發(fā)的項(xiàng)目中,就能顯示gif圖,,gif也是比較普遍的圖片格式了,,英文全稱是Graphics Interchange Format。

24.

-no-libtiff
-qt-libtiff
-system-libtiff

tiff是一種非常復(fù)雜的光柵圖像格式,,并且有直接現(xiàn)成的C語言實(shí)現(xiàn)庫,,因此選擇參數(shù)時(shí)就有了qt和system,一般來說,,科學(xué)相關(guān)的開發(fā)里可能會用到,。

25.

-no-libpng
-qt-libpng
-system-libpng

png的相關(guān)參數(shù),一種非失真性壓縮位圖圖形文件格式,其實(shí)就是為了替代gif搞出來的,,也是隨實(shí)際需要來選擇,,當(dāng)然,也有C語言實(shí)現(xiàn)的庫,。

26.

-no-libmng
-qt-libmng
-system-libmng
大汗,,大汗,這可是超級罕見的東西,,QT竟然也能支持,,說實(shí)話,這個(gè)參數(shù)我看來就是無視的,。MNG是多幀PNG動畫格式,,結(jié)構(gòu)極其復(fù)雜,基本沒人用,。

27.

-no-libjpeg
-qt-libjpeg
-system-libjpeg

jpeg,這么有名的圖片格式也不用說了,,隨需要選擇吧。

28.

-no-openssl
-openssl
-openssl-linked

SSL,,Security Socket Layer,是一個(gè)安全傳輸協(xié)議,,在Internet網(wǎng)上進(jìn)行數(shù)據(jù)保護(hù)和身份確認(rèn),而OpenSSL是一個(gè)開放源代碼的實(shí)現(xiàn)了SSL及相關(guān)加密技術(shù)的軟件 包,,在qt中,,我們可以選擇直接支持,或者OpenSSL鏈接支持,這個(gè)參數(shù)也是為有需要者提供的,。

以上是第三方庫的參數(shù)選擇,,緊接著就是qt附加參數(shù),在附加參數(shù)里,,我們可以指定編譯的部分及加入?yún)?shù)來獲取信息,。

29.

-make
-nomake

一 句話,說明,,就說我可以這兩個(gè)參數(shù)選擇哪些我要編譯,,哪些我不需要,在 libs tools examples demos docs translations這些里你可以選擇,,比如examples,,并不重要,可以放在-nomake后,,這樣編譯過程中就不會編譯這部分了,。通過適當(dāng)?shù)? 選擇,我們可以大大加快編譯的速度,,這對配置較差的機(jī)子來說有著積極意義,。

30.

-R <string>
-l <string>

這兩個(gè)參數(shù)是為編譯時(shí)增加一個(gè)庫的運(yùn)行路徑及頭文件的路徑,,比如使用tslib作為開發(fā)觸摸驅(qū)動時(shí),我們就應(yīng)使用這兩個(gè)參數(shù)來指定tslib的庫路徑和頭文件路徑,。

31.

-no-rpath

-rpath

這個(gè)參數(shù)比較難于理解,簡單地說,,就是告訴動態(tài)加載器,,到-rpath指定的目錄中尋找編譯時(shí)須要的動態(tài)鏈接庫,語法就與上面的參數(shù)結(jié)合,,比如 -rpath -R/home/xxxx,。

32.

-continue

這個(gè)參數(shù)的作用就是當(dāng)出現(xiàn)錯(cuò)誤時(shí)依然進(jìn)行配置編譯,換我是不會加上的,。

33.

-verbose, -v

這個(gè)參數(shù)就很眼熟,,在前面的文章中有過詳細(xì)介紹,簡言之,,就是顯示配置的每一步的具體信息,。

34.

-no-optimized-qmake
-optimized-qmake

是否編譯生成優(yōu)化過的qmake,沒啥大用,,也屬于可有可無的參數(shù),。

35.

-no-nis
-nis

是否編譯NIS支持,NIS(網(wǎng)絡(luò)信息服務(wù))是一個(gè)提供目錄服務(wù)的RPC(遠(yuǎn)程過程調(diào)用)應(yīng)用服務(wù),,當(dāng)然沒網(wǎng)絡(luò)需要的可以再次華麗地?zé)o視,。

36.

-no-cups
-cups

是 否編譯CUPS支持,是不是想問什么用啊?~~~~囧,,開打印店用的,。好了,不說冷笑話,,CUPS給Unix/Linux用戶提供了一種可靠有效 的方法來管理打印,。它支持IPP,并提供了LPD,,SMB(服務(wù)消息塊,,如配置為微軟WINDOWS的打印機(jī))、JetDirect等接口,。CUPS還可 以瀏覽網(wǎng)絡(luò)打印機(jī),。它的開發(fā)提供者是大名鼎鼎的“水果生產(chǎn)商”----蘋果公司。

37.

-no-iconv
-iconv

選擇是否編譯iconv支持,,iconv是一個(gè)計(jì)算機(jī)程序以及一套應(yīng)用程序編程接口的名稱,。它的作用是在多種國際編碼格式之間進(jìn)行文本內(nèi)碼的轉(zhuǎn)換。這對跨語言Qt開發(fā)人員來說是很有用的,,當(dāng)然,,考慮到中文的編碼,我也選擇加入支持。

38.

-no-pch
-pch

是 否支持預(yù)編譯過的頭文件,。預(yù)編譯頭就是把一個(gè)工程中的一部分代碼,預(yù)先編譯好放在一個(gè)文件里(通常以.pch為擴(kuò)展名),,這個(gè)文件就稱為預(yù)編譯頭 文件。這些預(yù)先編譯好的代碼在工程開發(fā)的過程中不會被經(jīng)常改變,。如果這些代碼被修改,,則需要重新編譯生成預(yù)編譯頭文件。媽媽經(jīng)常說:不懂就要學(xué),。我說:不 懂就加上,。。,。

39.

no-dbus
-dbus
-dbus-linked

是否編譯編譯QtDBus模塊,。dbus是freedesktop下開源的Linux IPC通信機(jī)制,本身Linux 的IPC通信機(jī)制包括,,管道(fifo),,共享內(nèi)存,信號量,,消息隊(duì)列,,Socket等。在Qt中DBUS是有單獨(dú)的模塊的,,可見其重要性,。

40.

-reduce-relocations 對于額外的庫鏈接器優(yōu)化,可以減少編譯中的再定位,。

41.

no-separate-debug-info
-separate-debug-info
是否存儲debug信息在.debug,,一般為了查錯(cuò),還是選擇存儲吧,。

42.

-xplatform target

相當(dāng)淺顯的參數(shù),,即交叉編譯的目標(biāo)平臺,一般來說根據(jù)你所要移植的目標(biāo)板來確定,。

43.

-no-feature-<feature>
-feature-<feature>

選 取qte的feature編譯,,對于這個(gè),我理解為特性,,特性的描述你可以參考src/corelib/global/qfeatures.txt,,在這 里面對于每個(gè)特性都有比較充分的講解。對于特性地選擇,,也是要根據(jù)開發(fā)需求進(jìn)行,,如果裁剪適當(dāng),能大大為qte庫瘦身,。

44.

-embedded <arch>

嵌入式平臺架構(gòu)選擇,,可以選擇arm,,mips,x86及generic,,視你的目標(biāo)平臺決定吧,。

45.

-armfpa
-no-armfpa

這個(gè)參數(shù)也只是針對ARM平臺的,是否加入對于基于ARM的浮點(diǎn)數(shù)格式的支持,,通常,,這個(gè)參數(shù)在編譯時(shí)會自動選擇。

46.

-little-endian
-big-endian

目標(biāo)平臺的大端和小端選擇,,這應(yīng)該是常識了,如果這不知道,,就不要來混嵌入式了

47.

-host-little-endian
-host-big-endia

主機(jī)平臺的大端和小端選擇,,屬于雞肋的參數(shù),不選擇也會在配置時(shí)自動選擇,。

48.

-no-freetype
-qt-freetype
-system-freetype

選擇freetype,,F(xiàn)reeType庫是一個(gè)完全免費(fèi)(開源)的、高質(zhì)量的且可移植的字體引擎,,它提供統(tǒng)一的接口來訪問多種字體格式文件,,在嵌入式開發(fā)中,有套可使用的字體對于中文開發(fā)至關(guān)重要,,本人一般使用文泉驛字體,。

49.

-qconfig local

使用本地的qconfig配置文件來替代全部參數(shù)配置,有需要的可以去研究下,,可以裁剪控件級別的參數(shù),。

50.

-depths <list>

顯示的像素位深,也是根據(jù)需要來進(jìn)行吧,。

51.

-qt-decoration-<style>
-plugin-decoration-<style>
-no-decoration-<style>

這個(gè)是選擇qt的樣式風(fēng)格,,對于需要美化界面的項(xiàng)目來說,可以好好選擇下,。

52.

-no-opengl
-opengl <api>

是否加入opengl的支持,,OpenGL是個(gè)專業(yè)的3D程序接口,是一個(gè)功能強(qiáng)大,,調(diào)用方便的底層3D圖形庫,。不過對于一般的開發(fā)來說,似乎有很少用到的地方,。

53.

-qt-gfx-<driver>
-plugin-gfx-<driver>
-no-gfx-<driver>

這個(gè)是相當(dāng)重要的一個(gè)參數(shù),,選擇QtGui的圖形顯示驅(qū)動,比如我們在pc上使用qvfb模擬時(shí),,就應(yīng)該加入對qfvb的支持,。我們可以在 linuxfb,,transformed,qvfb,,vnc,,multiscreen這幾個(gè)中選擇。在平常的開發(fā)板上,,選擇linuxfb即可,。

54.

-qt-kbd-<driver>
-plugin-kbd-<driver>
-no-kbd-<driver>

選擇鍵盤的驅(qū)動支持,可以支持usb鍵盤,,串口鍵盤等等,,也是在tty,usb ,,sl5000,, yopy, vr41xx ,,qvfb中選擇,。

55.

qt-mouse-<driver>
-plugin-mouse-<driver>
-no-mouse-<driver>

鼠標(biāo)的驅(qū)動支持,一般都會選擇tslib,,可以完美地支持觸摸屏,,在pc,bus,,linuxtp,,yopy,vr41xx,,tslib,,qvfb中選擇吧。

56.

-iwmmxt

加入iWMMXt指令的編譯,,也只是部分XScale架構(gòu)才具有,。

57.

-no-glib
-glib

是否加入glib庫的支持,glib庫對應(yīng)即gtk庫,,就也是說加入后可以使用gtk,。

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn),。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多