Qt如何打包一個(gè)Qt程序
寫(xiě)好一個(gè)Qt程序后,如何直接打包成一個(gè)雙擊即可運(yùn)行的程序?
由于實(shí)際需求,我們寫(xiě)好程序好一般是在Qt內(nèi)部編譯運(yùn)行的,當(dāng)需要移植到其他電腦時(shí)很有可能用戶(hù)沒(méi)安裝Qt,也可能因?yàn)镼t版本的不同,實(shí)現(xiàn)不了程序,這就需要我們進(jìn)行程序打包了。
睿智做法
當(dāng)然,生成一個(gè)可執(zhí)行.exe文件時(shí),可以直接雙擊,這時(shí)候多半會(huì)彈窗提醒缺少dll文件,這樣我們可以在Qt安裝路徑下搜索復(fù)制添加相應(yīng)dll文件到.exe文件的同級(jí)目錄下;然后再點(diǎn)擊運(yùn)行exe文件再?gòu)棿霸偬砑?。。。以此往?fù)。我第一次打包就是使用了這種睿智做法直至崩潰。
比較安逸的做法
由于是Qt自帶的所以一般不會(huì)出什么問(wèn)題。
- 當(dāng)發(fā)現(xiàn)上述方法根本是釜底抽薪時(shí),我查閱了相關(guān)資料進(jìn)行了總結(jié),可算找到一種靠譜的做法了。首先在Qt中編譯運(yùn)行release版本,而后找到release版本文件夾下的.exe文件,復(fù)制粘貼到一個(gè)新的文件夾(這里我不知道什么原因,直接復(fù)制在C盤(pán)并不可行,可能是C盤(pán)默認(rèn)“隱藏屬性”路徑包含中文或太多級(jí)所以不成功)一個(gè)新的文件夾(這將是你打包程序的總文件夾),如:在D盤(pán)下直接新建一個(gè)文件夾asd(路徑為 D:\asd);
- 打開(kāi)Qt的命令窗口(可直接在Windows搜索Qt則會(huì)出現(xiàn)管理員程序)
- 在命令窗口輸入"cd /d"加剛才保存的.exe文件路徑: cd /d D:\asd;
- 回車(chē)后會(huì)進(jìn)入你創(chuàng)建的exe文件夾,再輸入 :
windeployqt D:\asd;
也即windeployqt+空格+你創(chuàng)建的exe文件路徑。
- 這時(shí)系統(tǒng)就會(huì)自動(dòng)在你創(chuàng)建的exe文件夾內(nèi)添加運(yùn)行程序所需要的庫(kù)以及一些描述文件。
- 壓縮打包即可。
發(fā)布
有很多紕漏,但大致是這樣,公司沒(méi)外網(wǎng),系統(tǒng)有缺陷,截圖也截不了,吐血。。。word都打不開(kāi),啊。