另辟蹊徑-利用MSYS2安裝MinGW+Qt開發(fā)環(huán)境(含32位-64位-動態(tài)庫-靜態(tài)庫-qwt-opencv等等)_第1頁
另辟蹊徑-利用MSYS2安裝MinGW+Qt開發(fā)環(huán)境(含32位-64位-動態(tài)庫-靜態(tài)庫-qwt-opencv等等)_第2頁
另辟蹊徑-利用MSYS2安裝MinGW+Qt開發(fā)環(huán)境(含32位-64位-動態(tài)庫-靜態(tài)庫-qwt-opencv等等)_第3頁
另辟蹊徑-利用MSYS2安裝MinGW+Qt開發(fā)環(huán)境(含32位-64位-動態(tài)庫-靜態(tài)庫-qwt-opencv等等)_第4頁
另辟蹊徑-利用MSYS2安裝MinGW+Qt開發(fā)環(huán)境(含32位-64位-動態(tài)庫-靜態(tài)庫-qwt-opencv等等)_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、另辟蹊徑-利用MSYS2 安裝 MinGW+Qt 開發(fā)環(huán)境(含32位-64位-動態(tài)庫-靜態(tài)庫-qwt-opencv等等)By Winland, 本文介紹在Windows 系統(tǒng)里 MSYS2 環(huán)境和 MinGW-w64 編譯套件安裝、Qt開發(fā)環(huán)境安裝。一、MSYS2及其安裝使用1、MSYS2介紹這得從MinGW 和 MSYS 說起,原本GNU 工具只在Linux/Unix 系統(tǒng)里才有,隨著Windows 系統(tǒng)的廣泛使用,為了在 Windows 系統(tǒng)里可以使用GNU 工具,誕生了MinGW( Minimalist GNU for Windows ) 項目,利用MinGW 就可以生成Windows

2、里面的 exe 程序和dll鏈接庫。MinGW只是編譯工具集沒有類似Unix命令行環(huán)境,所以為了進(jìn)一步在 Windows系統(tǒng)上使用類 Unix環(huán)境,MinGW項目組衍生了 MSYS子項目,該項目從 Cygwin派生,構(gòu)造了 一個類Unix命令行環(huán)境,并提供 POSIX功能支持。MinGW 本身僅支持生成32 位程序, 而 MinGW-w64 項目相當(dāng)于是MinGW 的升級版,同時支持生成32位和64位程序。MSYS2也是MSYS的衍生版,使用 MinGW-w64編譯工具集。另外 MSYS2還有一個非常強(qiáng)大的功能, 它從Arch Linux引入了軟件包管理器 pacman工具,使得MSYS2 功

3、能擴(kuò)展非常方便,并且可以通過pacman 來解決各個軟件和庫之間的依賴關(guān)系,自動安裝需要的依賴軟件包。MSYS2項目還打包了非常多的開發(fā)庫和開發(fā)工具,能移植到Windows上的估計都打包了,而且還可以進(jìn)行擴(kuò)展。因此通過MSYS2的pacman工具安裝諸如 MinGW-w64編譯工具集、Qt開發(fā)庫和QtCreator、 qwt 繪圖插件、opencv 開發(fā)庫、 ffmpeg、 gstreamer、 openssl、 sqlite、 postgresql、gtk、 crypto+ 、 mesa、 openal、 tcl/tk 、 vlc、 zlib、 SDL 等,都是易如反掌。對于python 、

4、 perl、ruby、lua腳本環(huán)境,git、mercurial、cvs等版本控制軟件,cmake、clang、Hvm等編譯生成工具,也可以通過pacman 來安裝。MSYS2 主頁projects/msys2/MSYS2詳細(xì)安裝指南p/msys2/wiki/MSYS2%20installation/2、安裝 MSYS2首先從 MSYS2項目主頁或 SourceForge下載MSYS2的基本安裝包: 32位系統(tǒng)下載,64位系統(tǒng)下載。請記住i686對應(yīng)32位系統(tǒng),x86_64對應(yīng)64位系統(tǒng),以后裝軟件都是這種對應(yīng)關(guān)系。下面以32位的示范安裝過程:點擊“下一步安裝攵件央再捐在耳樣攀喃£柔

5、卜門二交,|融皿.上一竽境.吼聲注意上面選擇安裝位置,路徑里不要有任何中文、特殊字符、空格等等,一般裝在磁盤根的msys32或msys64目錄。注意磁盤剩余空間要有 10GB以上剩余空間(硬盤空間不足的不要模仿),那個分區(qū)剩余空間比較大就裝哪。MSYS2本身不大,但是后續(xù)如果裝Qt庫、opencv之非常占空間。類的,會越裝越多,所以要留足空間。Qt動態(tài)庫安裝后是,Qt靜態(tài)庫也是差不多,設(shè)置好安裝路徑,點擊“下一步”,X空由桁壬 . JT擔(dān)菜單快梗方式游附福施苴中鮑解觸桂方式的開好事*就更可城帖的口恥正屐件夬isjfsa 并hi三6:由金中心AccessoriesAdmin strartke00

6、歸 1CFCAMaintenanceStartup判PS Office哈絳E點擊下一步,XM喀闋%不用特,出正在安裊標(biāo)£”2 2;bit止在受其組件*3TK mii等待安裝結(jié)束,甲擊"第4.以退土后躇三沿t"百號*/彳加匚亓股歸刪ii*點擊完成,看到 MSYS2命令行:db2wdb2-PC先關(guān)閉該命令行,現(xiàn)在還干不了什么。安裝后,在開始菜單->MSYS2 32bit->MSYS2 32 bitWinGW-w64 Win32 Shell陋 MinGW-wW Win&4 ShellS3 MSYS2 Shell里面有三個命令行工具: 第一個 MinG

7、W-w64 Win32 Shell是指32位程序開發(fā)環(huán)境,在32位和64位 Windows里都能用。第二個 MinGW-w64 Win64 Shell 是指 64 位程序開發(fā)環(huán)境,僅在64 位 Windows 里使用。第三個 MSYS2 Shell是MSYS2環(huán)境管理命令行,可以安裝卸載MSYS2環(huán)境里軟件、管理文件系統(tǒng)、執(zhí)行腳本等等。只有在頭兩個 MinGW-w64的命令行里才能使用gcc、g+等編譯工具。MSYS2 Shell 一般僅用于軟件包安裝管理和更新,另外兩個Shell 才是開發(fā)環(huán)境,不要弄錯了。3、更新MSYS2系統(tǒng)環(huán)境MSYS2環(huán)境的軟件和升級都是在線方式的,需要聯(lián)網(wǎng)下載。所以

8、需要一個可靠的軟件源,軟件源配置文件在msys32etc 文件夾里三個:、更換軟件源的話只需要更改三個文件里的Server = 右邊的服務(wù)器地址,用寫字板或其他編輯器打開編輯就行了,里面都是文本(注意備份舊的文件)。軟件源可以使用默認(rèn)的SourceForge 官方地址,也可以自定義,比如使用愛爾蘭的源中使用中使用Shell進(jìn)彳T MSYS2系統(tǒng)更新:( 1 )更新軟件數(shù)據(jù)庫pacman -needed -Sy bash pacman pacman-mirrors msys2-runtime有詢問就輸入 Y,繼續(xù)執(zhí)行。ftd bZwclb2 " PC M i't .-I 附 c

9、rnain - - rieedfd -Sy 匕 h pALrndn pacnar-mi rors WiytJ-Lintirte,::正蕓5生秋一直效秀庠一, mngw32ningwJJ, §/i giriHg4229.6號6+Q工犯1mrflwt4. st qin二產(chǎn).£ig12 J. 5Qfi, 0:mcnan-iii rr or s -2OXfl1Z2 3-1KiB 1142K;s b q. we門K-iB 16SW/5B O.CKffi/sKiB LMJK八 R O. OOB/$OOzOOQChOGQQ:8Q0:0O00100 oo;on己妾為最新雕過“十步紫4 中*

10、十4士守:學(xué)鼻* 豪學(xué)±T卡口妙*«上上岸£彩£江川岑::3口£了4工1£££3£工304!了£工下二"/H#的#等親吉整苦兼于養(yǎng)力二*咐#融無工虹£"工。工上工。二ICKftIF燈件冉 口),*j nsytsi runtime 31.Q, 162言.配燦燈& 1oacran 4 4 2104 1DC,9b2L14c 1“箕大 H «-2« 1*1»電荒安普大小.H.0? MiE洋手老三?。?.?0 MHE:定什毛注馬T .:;

11、正作妄取犯杵包rasy? j'runt lttir-5.1. 0, . - bKh-4.S.O33-l-i SUp acrian -A.2Q. 610 6.9.2,! i嚼丸qMtA KiR MikS五隹七支在弱卡里廠苣1國16661(75 00:01L71M/C OOSOL16S7K/5 00:015 臼門) ,蠲 cm a/毛正在&會串:.U史宛勢怪 止J二二效K口工之 工毒桂泰H4手友 正甄的Eh期日??胀?王白克尹 止在史斯 T->srO1£ 產(chǎn) 2-r iU nt i nr bashpacman心¥谷谷期Rw*4hrtM 晨幕邛竟士春 加工*

12、加工才#工+|:# WEBWH «*«* * * 。3m孰地7rt咐L 7一|:廣-1-1>如果出現(xiàn)下載軟件包錯誤,那就重復(fù)執(zhí)行剛才的命令,直到成功為止。(2)關(guān)閉舊的 MSYS2命令行,重新打開 MSYS2 Shell,更新軟件pacman -Su有詢問就輸入 Y,繼續(xù)安裝C ?/?C印士力 ( B/12J C 0同 0.0/22) 占L?于 仁上上;C14/22) 3D (應(yīng)式 C17/2?) J&'H) (19, 22' C?0/?5 H:C22/ 花百帝曰各幣曰新事幣新事苒第S百 更更丁正史丁克亢I史于克史甲史史事更£于 3也

13、仃3包7TQ日HQ心7T3日rFa心7?3心落 正正正正企正正止正正正正正正正正正正正正正1 iboprn.'ssl apensl libirrtl a cn-crrtificales libidii libarlCLJl-1filfefiyEtefr11 bqcttcxtpo-1 ibasprinHF getTfiJCtIf bl »2 li bread llirx1 ibut-i 1-1 iruB whi eJiXE rtpoBin-Q-i t tZCM utT 1-1 iriux玨*2叁4斗7通.rtirtfrer#?tiwrtfw,*xwwxxoxEx5wraxr:

14、e,巾 ¥=#m,”rwrt 井 w * 十b+4七寸廿士)由土跑土圣土土匕土壯1 rt'rjrjgrrTfl'rffffTffrTfl'rjr/ rt/"irfiwrtrhirtfr 才妙 » 小2號理士 di¥2w#亡*/d* *: rjrrwrSff-rtrtfFrffrrffrjrx; 而趣才#*#忖改*域 *M±&±W廿±金昆f4土: rtrwr#Frt«Frttrtrw/ 向出#*#*# 油州*"#' f 青*#¥出#*#*#¥4由

15、¥4f 件上 金: rtrtf»TfFrt«ffrwwr«/ 咕用#利餐聲*薜*由"例居 4!小學(xué)義世球出白工耳產(chǎn)出與金理止¥64 4立, rtWTWrtWtswrtrmf; 向#*#*#*#*#'liDCWf LM*100K 100* 10CHE lOCft 100* 100% 10M lOCWf 1CNM 二的 ICKWt IQCft 二 TK 10W iom :r 100* iom 1005tMdbJ4wdt>2-K.如果出現(xiàn)下載軟件包錯誤,那就重復(fù)執(zhí)行剛才的命令,直到成功為止。更新成功之后,關(guān)閉 MSYS2命令行

16、,完成 MSYS2系統(tǒng)更新。二、安裝 MinGW-w64編譯套件默認(rèn)情況下MSYS2只安裝了基本環(huán)境,開發(fā)工具集沒裝,需要手動來安裝,下面來安裝。打開開始菜單的 MSYS2 Shell,執(zhí)行下面命令:1、安裝基本開發(fā)環(huán)境和工具pacman -S base-devel git mercurial cvs wget p7zip perl ruby python2說明pacman -S是安裝軟件包的意思, base-devel是基本開發(fā)工具和庫, git mercurial cvs三個 是版本控制軟件,可用于下載和發(fā)布項目源代碼,wget是下載工具,p7zip是解壓縮工具,perlruby pyth

17、on2三個是腳本編程環(huán)境。ns, .1 peumart -5 ijoie-devel git rtteLuri al t1中3 wyet p7±i p perl pylhonZ :共有>3組受在退base-devel中?;:軟件庫rnsys1) asciidoc 2) autccanf 3) autoco-hf4) autog&n 5) aLtCflioke nrappr . 10 7B11 &aut nndk tl .1310j autcMicikel. 14 11") auizofnak-El, 15 12' £jutcmakel

18、. 5 13) autonokel. 714J ajjt«iaL<el. 8 15) ajutomak虹. 9 biecn 17) dif,Fstat IfiJ diffuti Is19) dbszunix zo filf 21) fl ex zz qMk 231 adb Z4) gette>t zs) gosrf 26 grep 27) or off 26) hclp2rniin 泊intltgl 30) lawn 31) Hbtool Sij 11bunrar 33 mi 34J makeJ nnar-dh 3£J nasm 17j pacnan ZSJ p

19、atch39) pdtehutils 40) pet 1 41) uk.g3nfig 42) pkgri 1 e 43) rn 44) 45) sed 16) swrig *7)texi nF0 48) texirdFo-tex 43) unrar 50) *fget 51$ xmlto 5Z) yasm 53) yasm-devel艷人某個速捧C默力尸全說送至J::遇到“輸入某個選擇",不打字,直接按 Enter鍵,全部安裝。制.一口 Xtar-1,. 28 3 viffl-74- 674-1 asuHdcc-樂國 97 autocoinf-2,69-3autocomf 2.13-

20、2,15-? autogen-S .18.4-2 ant iMiake-wrapper-10-1aLiLurnakd. 10-1.10, 3*2 au Loiiakd.U"l. 11. autcflikel, 12-1,12.6-2 autcnakel.131.13, 4-2autonakel. 14-1.14.1-z autondkel.15-1-15-1 auton£l:ei. 6-1. b. 3-zauzofiakel.7- 1. 7. 9-2 Jiut«fidkcl.fi l.fl.S-J autonakel.9 1.5.G 2hicin-3.0.4-1

21、rw-1 a 11. riiffs;taT-lB 4S-l riiffiiitiHe"?, i-l dosZuni x-7« Z-1 Fil e-5 u Z2-1 flex-2.5 . 319F4 gawk-4,1.1-3gdlb-7u 9-1 cettext-Ou I®. 4-1 git-2.3* 5-1 gperf-3.0.4-3grep-2 fc 21-1 orofT-l- ZZ. J-l help2man-l,46, 5-1 irtltccl-OB >1-0-L 1 enon-3.8*7 - 0-1 li btwl - 2- 4 * 6-1 li b

22、unrar-5.22-1 m4-l. 4.17-4ialre-4 - 1-3 iman-db-2. 7. L-l mereuria 1-3. 3-1 naEn-2.11. OG-1 aj7zip-9,3e-l pdUM 1-4.2, 0. ftlOeLZll4L-l palLh-2,7-5-1satcnuti 15-03-3-2 perl-5,20+3-1 pkg cnf-ig 0. 2S-2 pkgnFile-15-1 M pythomz-2-7-3 7匚5-5,9,4-1 rufe-Z,1,-1 scons-2.3.4-zsed-4-2.2 2 Smig-3. D, 5 1 texiirF

23、o-5,2 5 texi nfo tex 5.2 5ynrai.r-5.7.7-1 嗯例h-1.16.*而1*加0.O.yatfli-lB 10THasii-d e el -1.3.0-1下裁大小;MQX MiB全部案集大小二39S.79 MiB港更載頭小二S6 NtB熊進(jìn)行文莪嗎? 7/切i B輸入Y,進(jìn)行安裝。如果出現(xiàn)下載軟件錯誤,就重復(fù)執(zhí)行剛才的命令,直到成功為止。安裝成功后,繼續(xù)下面小節(jié)的安裝。2、安裝 MinGW-w64對于32位系統(tǒng),執(zhí)行:pacman -S mingw-w64-i686-toolchain對于64位系統(tǒng),執(zhí)行:pacman -S mingw-w64-x86_64-

24、toolchain注:32位系統(tǒng)只能編譯運(yùn)行32位程序,64位系統(tǒng)既可以編譯運(yùn)行 64位程序,也可以編譯運(yùn)行32位程序。如果希望在 64位系統(tǒng)同時編譯 32位和64位系統(tǒng),可以把上面兩個工具鏈都安裝。 一般情況下只需要一個。 rr .Rmil丁 正聲擊* biganl狀狀怙審口的畫(114/114正由玄裝 ruby _#"”*#*j< log,T“ H/Hull 1D<At icwi of yti iri&T*l】q i,SKiHF/ ubyAdd the Tai 1 awi ng Tine to- your PATH t千 you plan to i nstal

25、 1 ljet trig g由1(ruby - rybynens e "puts Geir. user_di t'j/bi ftTf you> rfrtmt to instflll tt> t hp憎 id 戶 1 gc fl t > pn t. yw nd,T 鬲thk:edit /etc/giPffirc or run gem with The 一一nc-use-insfal 1 flag.ruby即可承SEJ陵 ”ruby docs; Ruby docuncn t nt -ion國0 b啟kdb上ml仁仙H|I PKhjjh S nn newt&

26、;cblchain” 共育 15 苗度:在組 mi ncw-ifM-n 566-tTOlc.hai m +:就仁用 ir t iiywi?1.工? iri ngw - -i 68fe- bi in wti 1 £ E) irjn75MrSt-gAt 3) ffli ngw-&J-ii acc H4) in ngw-i S8fi-gcc-a£la 5 ) m nqw-w&4-1 &S6 -gcc-1 art ram©5 #11 riyw-nCJ- i ftSfi-yt t ! i bjif'Ur't.FiiM 7j rfr 1

27、 M,y* ftf4- - fe >fi0f1 fiKt *1 i ts-W vd n中f &rf-門bj 匚mid<jh-wM->igdb10) mi rgw-.Z - itSb-hEadEr5-gii: 11) mngw-rftk4-i b£fc- li tznang I e-git12) mi gw n4 iGGt bbi nutfircad out 11) mingw 64 i56t mfikc'1 君,mi iqw-hiM-it 15) ni-i;68fi-wirpthrrd-gi tJL6) im igw-ife4-i ftSfe-win

28、Etoreccwipat-git禽個之母t好中一辛酊遑京);遇到“輸入某個選擇”,直接按 Enter鍵,全部安裝:mri ngM -w54-i BSG-mp仁一工,- 3一1! nil ngw-w&4-i BS-6-mp-Fr3 -1=2. pll-1mm ri gn -wb 1 m4: - 口匚 u - t . 9 ; 2DU 03 21-1mTngw wE4 1686 口*作話12. a 1 mrgw w61 i6M pyt honZ 2.7«9 2nri n>R-wE4-i 6BG-rcadlline-G. 2. MS -3 mi n-wB4-i 6E6-tcl

29、-B - 6- 4-1 nringw-w-i SBG*ter ncap-1,3 , 1*1 m:-iCilG-t:上一乩的.鼻1mifiQK-wM-i ftftfi-zl -i b-1.3 H手 口7k窗叩64-1 fiSR-bi nut : ls-2»25-l mriin中一w54i Bfi6-Ert-griT-s_ D. a_4.47B. 79DlBi-Lm力卯-wb4-1 bfe6-gcc-l.S. J-h m ngw-wbd-i bdb-gcc-ada-d/sl 工修叫n4 ”64 1686 g« Fcrtr»i %9*2 5nrinqM-w54-i SE

30、E - qcc- II i bq"Fo 產(chǎn)tmn-4.9.2-5ittiinijH r G4 T 066"d 1H 匕 7 工丸 N 7 mi ngw-fl 64 - it4.9B2-5fill n p t H4-iWh- 7 . 5工-?nriingta-w64-i&B6-headers-git-5.O. ,447fi, 730afi5-4-lnri力弊-wb4-i Msb= 1 i bfnangle-gnt-M-0-0. 41284. w里 1334 a2nninjjni-w64-i686 lilbwinpthread git 5 + 0.0,«S5.

31、 32db221-lnringiB-w54-i6B6-miike-4.0.2283-32cb&j-LrttinuM-wG4T &66-Lw-1 i-giL-4.0.0. *17. "F3bta-1mi nppi-wMiFiRiB-ftT npthrMd-g-ft-5.0.0- 44與5. l?dh?Zllmi ngpi-wfi4- i 5fi6-wi n & Lor econpat -gi t -4. D. 0.4J2fi. a913 346-L下就大小:9樂, HiB全靜安裝大小二5a2.5O HiB=:慢行密裝斗,lV/n 3輸入Y,進(jìn)行安裝。(64位系統(tǒng)

32、是 編譯工具集:如果出現(xiàn)下載錯誤,就重復(fù)執(zhí)行剛才的命令,直到成功為止。安裝成功后關(guān)閉舊的命令行。在開始菜單里打開MinGW-w64 Win32 ShellMinGW-w64 Win64 Shell),輸入 gcc -v就可以查看是否安裝好了MinGW-w64wtdbZ Pt , t QCC 7built-incolL ECT.GCC32n17 now3zbi nXocc, exeCOLLECT_LT0_hmP3ER=Cngrtl./hin/. . /I i b/gcc/i Mfi-wM-n ngw32/4,2/l to-方Kppor.TMPTarget 二 i&4-mri n gw32

33、lohti g jr#d with: . ./gcc-£i. i/conf igure - * ef n t =/rr1 ngw 3 -wlth-lbDcal -pr#f i52 /1 oral - - buii fiUfi-wiW-m ngw 17 -hos t»i-nn n gw ? - -t argr»ii 6« 6-rm nw|2 一一 5 th- nati ve-sy st an-h e ader -d i *=/rai ngw3 J/i 6&6-la64 - Hi ngwi 2/i ncl tide 一一li be xecdi r=/

34、iii nghd2/1lb - -usith-gpcx-l n e I nd e-di r-/fin n gwJJ/1 "nc I u d*/ C+/4 a 9. 2 enab le-b otstrip -with-irch-i6St -with-ture-ger*ri c -enabl<-lan-gu*ge£cailtGilc-Mu obcP ort:ran p ada -erabl e-Ehared -enabl e-taXic »-erabl s-11 batcni c 一一eriiahl e- t hre ads-po-s i k -enab I e

35、-graphite -er ab I e + u II ly- dynann c-string - ensb 1 邑一 libs "dots tme-ycs - diU1 c-11bstdcKx pch< -disable bibstdoix debyg -enable clcag dackc nd-i s 1 - - enabll e - /ers n c<i-spccif t c-unti we -11 b5 - - di sable -cl 009 - ver si an - check -di sab I e-i si -verEi an-che-ck -enab

36、 I e- Ito - - enable- 11 isgcmip -dn saLDlle-mj Iti lib -ensbl e check!pgease duMeible rpatti dis&bluMnJ2 registry dusablenls di3m bl c-wearer - -tri s abl c - s ywer 5 - wi th -1 i bi c&n / - -wi th - stai zlib - -wi t h -aip®- zflii ng 誼 32 -with -npfr-znri nsnt'32 - - wi t h -rrp

37、c« /nri nq*3 2 - -wi th - n si -/rri now32 - wi th-cl osq-Zri inrgirtf32wi th - ipkgver 51 ar-1 Rev5 s Ujilt by MS¥S2 projectr with bugur If ttp: f/moureef or ge. n et/pru jecta/rays 2 -wi th-on ui*aa -wi t n-qn u*ld -dia abl e*sj 1 -tExcent i om s -wi th-dwirf2 Thread mode1: 口口斗彳咒 其匚 vers

38、ion 4,丸 2 (iRev5. Built by M5Y5Z project)w.1b2r&W'Jb2 - PC "二 m :.?上面安裝了 MinGW-w64工具集和基本的開發(fā)庫,還有 perl、python、ruby等腳本編程環(huán)境。接 卜來我們來安裝Qt開發(fā)環(huán)境。三、安裝Qt開發(fā)環(huán)境Qt開發(fā)環(huán)境默認(rèn)情況下都是使用動態(tài)鏈接庫的,我們先安裝動態(tài)庫版本Qt和集成開發(fā)環(huán)境QtCreator,然后安裝靜態(tài)Qt庫。注意:動態(tài) Qt庫可以用于遵循 LGPL的商業(yè)閉源軟件,也可以用于GPL開源軟件,而靜態(tài) Qt庫只能用于GPL開源軟件,這個規(guī)則要記牢!1、安裝動態(tài) Qt庫和Q

39、tCreator打開開始菜單里的 MSYS2 Shell, 32位系統(tǒng)執(zhí)行:pacman -S mingw-w64-i686-qt5 mingw-w64-i686-qt-creator 64位系統(tǒng)執(zhí)行:pacman -S mingw-w64-x86_64-qt5 mingw-w64-x86_64-qt-creator遇到詢問就輸入 Y進(jìn)行安裝。Qt開發(fā)庫下載時是 500MB左右,比較費(fèi)時間,需要等待,如果下載過程中出現(xiàn)錯誤之類的, 重復(fù)執(zhí)行剛才的命令,直到成功安裝為止。軟件管理工具 pacman自動使用斷點續(xù)傳,不會重復(fù)下載,所以可放心地重復(fù)執(zhí)行命令直到成 功安裝。安裝Qt時,有一個軟件包mi

40、ngw-w64-i686-fontconfig ,安裝配置得非常慢,要耐心等它安裝好,不要以為 pacman壞了或什么的,這個包配置就是慢;還有就是 mingw-w64-i686-qt5 這 個包本身非常大,安裝起來也比較慢,需要耐心等待。M.- 0*Pat ch in q text file 'X :, nisys 3 2 /rri nqwlZ/shae/qtS /nks decs / nod j 1 e s/qt_l i h_xnitvalta pri*.Patching rcrt file BaC;/maysJ2/mngwJZ/sharc/qti/nksoec5hqconfi&#

41、171;scri".Pat ch i 力§ text file "C: /mays 3 2/fti ngfw32/£. h ar e/-qi 15 /nks. pecs/qde ice»sPatehino fl 1 e Xs/msys32/mncw32/hare/qtS/nkspecj/qfeaturej>pr 1Ui.tftrt fili 'Xs/rnsysSZ/mngwJZ/fhirt/qtS/HffipKSyqmodul«. pri".Patching text file aC;.r-msys3-2/mi

42、mgw3J/11t/cnak-r/Qt5LirguistToo 15./Qt5LinguistTool scorrf crake1.P4trhiFig binary filr '七:尸,31nAi7/卜曲/中扈kPatdiina an nary f,1 1 e ,rC:/ins'E32/innow32/bTn/1 release. ejce.Pdt th in4j b i r ary file- ,hCi52/roino*52/bin/qickK _ es.e"1 .PartdiinQ Binary file "C:/ sys32/ninowJZ/bin/Q

43、tSCe+ dlT'.Patching bi nary -f ile ,rC:/nsys32/rwing*32/l>in/QLSCored. d 11°b /Csi<32) 正在*/jfIm憫7M獨岳pimrrrtrmr而標(biāo)布巾】low (12/32)正在安裝 *ngvf X-ig哦卦* *工廿拜"*,*# 10TO/ni ny-Ed-i fiXF-qt Ji /mt口r 的可選法七Fiin3w-wb4-T 88*8-&db: for the debLdaaer £ S1ningw-M* i fi&A-Lndk6: for tr

44、ndke project SupportninwK64-T 686-clongs for dang code model¥! dl b2 ' 1一安裝好了之后,需要在 MinGW-w64 Win32 Shell (64 位系統(tǒng)是 MinGW-w64 Win64 Shell)啟動Qt開發(fā)工具,比如:qtcreator &assistant &designer &linguist &說明:qtcreator是集成開發(fā)環(huán)境的命令名稱,后面接 空格和&是指后臺啟動新進(jìn)程,而不需要占用Shell命令前臺。QtCreator啟用時需要加載插件需要些

45、時間,啟動之后如下圖所示:這里就不示范動態(tài)庫的HelloWorld編譯生成了。就算是最簡單的 Qt版Hellworld,它在 Windows系統(tǒng)里依賴的動態(tài)鏈接庫也是很多的,可能有十幾個,所以用于發(fā)布程序很費(fèi)勁。下面介紹Qt靜態(tài)庫安裝和示范。2、Qt靜態(tài)庫安裝打開開始菜單里的 MSYS2 Shell,32位系統(tǒng)執(zhí)行:pacman -S mingw-w64-i686-qt5-static64位系統(tǒng)執(zhí)行:pacman -S mingw-w64-x86_64-qt5-static遇到詢問就輸入 Y進(jìn)行安裝。靜態(tài)Qt庫下載時大小也是 500MB左右,安裝后也是左右,下載和安裝都很費(fèi)時間。如果下載 過程

46、中出錯,就重復(fù)執(zhí)行上面命令直到成功為止。上面安裝的是完整的靜態(tài)Qt庫,包括Debug調(diào)試版和Release發(fā)行版,不建議使用靜態(tài)庫生成調(diào)試版程序,因為一個Helolworld都有280MB,靜態(tài)庫生成的 Release版Helloworld只有11MB, 并且不依賴額外的 dll, 一個exe走遍天下,所以適合發(fā)布程序。但是對于靜態(tài)庫,必須用 GPL 開源許可證發(fā)布程序。LGPL僅適用于動態(tài)鏈接庫。3、QtCreator生成靜態(tài)鏈接 Qt程序示范打開 MinGW-w64 Win32 Shell ( 64 位系統(tǒng)是 MinGW-w64 Win64 Shell),執(zhí)行命令:qtcreator &a

47、mp;在QtCreator點擊菜單“文件”-> “新建文件或項目”,新建 Qt Widgets Application ,Lr t ati :TiTLIfiiiul r clamGm!. a. Qt. ¥l乙.Ei皿 pr «ja c L Tliw .ppli<!v.l.LiiL 3& i=.幺.n QApliclLuk wiml iiacl .J.m 皿Wipy fliLdC4LDclbilz匚學(xué)宮棕LJd. -tri-rll 弓而午項目名稱設(shè)為hello,其他的不用變,點”下止, 少,寺 El Qt Widcjrt« ApplejitohK

48、rTSelFrifoHQt Cr«itr tHi pg 唱亡 fell MH” tri ts fcr /rr1口jeE heli* V Sila ci ill l£Ll=洋名/ Deskttr liBY-YCl 32bit CKTSZ)7 心” q UtMie) lisM-wM Wbit «kSl$t>T->| 野包Kit Selection是選擇Qt套件的意思,前面裝了靜態(tài)和動態(tài)版本,所以有兩個,都選上,進(jìn)入下基類選擇QWidget,進(jìn)入下一步:tt4 El QtLa: fill itililm作為于宏昌防F里噬目噂.1k 21;就閘柝ff帝用傷Ok

49、iaA>舄“玨2,力匯兌要有加的況件c ; ",Djo'xgw 口二;HaeT tie:1二。;匕三口口點二口 的Ik CN gd>±. cpj; rf-dgct.h wndije7;-eL點擊完成,進(jìn)入項目代碼編輯界面:將左下角Debug字樣的按鈕點開,可以看到兩個 Qt套件,帶有(static)的是靜態(tài)庫,沒有static 字樣的是動態(tài)庫。一般動態(tài)庫配合 Debug和Release構(gòu)建模式使用;靜態(tài)庫配合Release構(gòu)建模式使用,盡量不要使用靜態(tài)庫生成Debug版程序,因為太大了?!癉ebug”字樣下面的三角圖標(biāo)按鈕,我們選擇靜態(tài)庫套件的Relea

50、se模式構(gòu)建,然后點擊左下角構(gòu)建并運(yùn)行成功程序。Win7系統(tǒng)默認(rèn)在用戶名Documentsbuild-hello-Desktop_Qt_static_MinGW_w64_32bit_MSYS2-Releaserelease文件夾里可以找到,大小,這個可比動態(tài)庫編譯的發(fā)布省事多了。(盡量不要用靜態(tài)庫生成Debug版程序,不僅生成慢,而且巨無霸,我試了一下是270MB。)注意:對于Qt靜態(tài)庫生成的QtQuick應(yīng)用程序,運(yùn)行時有bug (動態(tài)鏈接庫沒這個問題)QQmlApplicationEngine failed to load componentqrc:/:2_ module "&q

51、uot; is not installedqrc:/:1_ module "QtQuick" is not installedqrc:/:2 module "" is not installedqrc:/:1_ module "QtQuick" is not installed這是Qt庫的bug,不是MSYS2項目能改變的。有臨時的解決方法,參考:詳情請見帖子的從16樓到21樓。四、其他擴(kuò)展開發(fā)庫安裝MSYS2項目里的軟件和開發(fā)庫遠(yuǎn)不止上面那些,之前提到了一大堆,下面首先介紹pacman通用的搜索安裝方法,示范一下qwt繪圖插件和op

52、encv的安裝。1、通用的軟件搜索安裝方法(以 qwt為例)打開開始菜單里的 MSYS2 Shell,(1) 一般首先更新軟件倉庫和升級系統(tǒng),這樣保證能獲知新發(fā)布的軟件包名稱pacman -Syu(2)檢索想要的軟件包名稱pacman -Ss qwt說明pacman的-Ss選項就是查詢遠(yuǎn)程軟件倉庫里的軟件包名,qwt就是我們想裝的軟件名稱??梢钥吹接兴膫€頂頭沒縮進(jìn)的行,mingw32是軟件類別,代表 32位軟件,里面有 qt4的和qt5的兩個版本qwt,最末尾的數(shù)字是qwt軟件版本。有4個字符縮進(jìn)的行是上一行軟件包的描述。Mingw64也是軟件類別,代表64位軟件,里面也有qt4和qt5兩個版

53、本的qwt ,末尾的數(shù)字 也 是qwt的版本。(3)安裝所需的軟件包安裝時只是需要軟件包名,不需要輸入軟件類別和最末尾的數(shù)字版本號,安裝32位qt5的qwt命令就是:pacman -S mingw-w64-i686-qwt-qt5如果安裝64位qt5的qwt命令就是:pacman -S mingw-w64-x86_64-qwt-qt5安裝時遇到提示是否安裝就輸入Y執(zhí)行安裝。qf widigHFtc for Terhnitrin(w-ww)“曲的dbZ PC MIiMGW32 1S paoRan S mingjw w64-i6B6 cpt qtS 正在解決依贛共聚. 上3位把女聲之怦英-效件包1

54、) nnngh-wiG4-i 68&- imt-qtS-6.1.1 -1-W正正正正正IF Wn111LI £ n/ ra 111 11 x_:里* HXFK 一It-環(huán) WS 慢CIW 天中 期件件件十上 FJ*就較文可十 懦m£登梨loot 100* 10CW lOCft IOCS 10CT* iora帽Wb妻酬Mb2 rcMinGW-w64 Win32然后我們查看qwt安裝后的效果,需要打開開始菜單里的開發(fā)命令行Shell (64 位系統(tǒng)是 MinGW-w64 Win64 Shell),執(zhí)行命令:qtcreator &對于QtCreator,打開一個普

55、通窗體項目,打開界面文件 *.ui ,進(jìn)入設(shè)計界面,把左邊的控件(或叫部件)列表拖到最底下:Ml牛 知鼻后工 34* Ult即2+4 0*1 HMgMUil LmLrwDQtti qL Mdq« Q&KlvirtiwVirv1 QQuickWkJirt WabVlm3-=nl- 7-JI Te*£ Bswwm-電< 由*phm 3” p7 CdEM 立| LCD Nn-%ri行產(chǎn)QwlPklEQwtJSeA唐ihjjT4Wn £jgOockQwlCara-pj5.¥Qw1£.ai«nlEf口"。"小由

56、。|E/kC=lf5Mu*熱聲TdgW"*mO時*TMT"0山二.2 4 照dgHqwidMqF<E 1.Qwtfrt尸口|d5;*L “UAHsirred一第一3地的.1 wgMkp:MeewF©wiirmimi-SriZKQxQnkajirqurpScr'1ETO嶼期1! HllklEfTi0,01Ot QIp4kw硬承! f£M14品圖由Mm斗CitTGtfk amQUHT/yklngV |, p)cbjei±NsmecsvFkx二.”看到可用的QWT控件,拖到界面窗體里面用,并且要在項目文件.pro里面加兩行:CONFIG

57、+= qwt INCLUDEPATH+=/msys32/mingw32/ include /qwt64位系統(tǒng)把32改成64就行了。帶有QWT控件的程序運(yùn)行后類似另外注意 QWT只有動態(tài)庫版本,得按照動態(tài)庫方式發(fā)布。 下面這個:2、安裝 opencv與上面過程類似,因為剛升級過系統(tǒng)就不需要執(zhí)行pacman -Syu ,直接兩步就行了,打開開始菜單 MSYS2 Shell,(1)檢索 opencvpacman -Ss opencv$ pmomani -Se opencvin i n !yft3 2/mi riyiw-w64 - i 6S6 - open l v 2.4.11-2(Ippm 5rfiurip r(wip.jter Vi sinn Li brary (ni narwfeW)irri ngvk&4/mingw-w&4opencv 2.4. U-2Open Sourte Cotfnputer Vision Library (ningw,w&l)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論