日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

QT5生成可执行文件总结

發布時間:2025/4/16 c/c++ 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 QT5生成可执行文件总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

轉載自:https://blog.csdn.net/helaisun/article/details/51810082


環境:win7 32位 運行Qt5.6?

所需外部軟件:upx391w,Enigma virtual Box

以樣例的形式說明如下:

1.利用QtCreator打開項目release生成項目可執行文件,注意這時生成的 *.exe文件是不能執行的,需要很多外部.dll文件,debug方式生成的文件有1.8M大。


2.提取ButtonTest5.exe運行所需要的dll文件。

如在F盤新建一個button文件夾,將ButtonTest5.exe復制到button文件夾中,啟用Qt自帶的windeployqt,將ButtonTest5.exe運行需要關聯的dll文件拷貝到F 盤的button文件夾中,方法如下(參考:http://blog.csdn.net/syrchina/article/details/50663337):

在開始菜單找到Qt 5.6 for Desktop (MinGW 4.9.2 32 bit),運行打開Qt命令行,如下圖。


針對F盤下的button文件夾,輸入命令行: cd /d F:\button,切換到button文件夾目錄下,

然后使用windeployqt工具,?再次輸入命令行;windeployqt ?ButtonTest5.exe,就可以執行拷貝ButtonTest.exe文件關聯的dll文件到button目錄下面了,再看看F盤下的button文件夾,所需要的dll文件都已經拷貝進去了,如下圖。


可以打開button文件夾,里面的ButtonTest5.exe可以運行了,此時button文件夾的總大小約39.7M,


3.使用Enigma virtual Box將ButtonTest5.exe文件及需要關聯的dll文件生成單個可執行文件

運行提前安裝好的Enigma virtual Box,"Input File Name"項選擇可執行文件ButtonTest5.exe,“Enter Output File Name”選擇待生成的單個可執行文件存放位置。點擊“Add...”選擇“Add Folder Recursive”添加dll文件所在的文件夾,選擇F盤下的button文件夾。



點擊"File Options"按鈕,設置文件選項如上圖,點擊“OK”,最后一步是點擊"Process",即可自動生成所需的單個可執行文件。生成的單個可執行文件有15.6M大小,如下圖。


如果對生成的exe大小比較滿意,到此就可以結束了。

如果是不想制作成單個可執行文件,而只是想以一個文件夾的方式(即:dll文件+ButtonTest.exe),顯然,39M的大小是不能令人滿意的,我們需要upx391w對dll文件進行無損壓縮。

4.使用upx391w對dll文件進行壓縮

upx391w(下載地址:http://upx.sourceforge.net/),在使用upx壓縮前我們復制一份button文件夾,取名為button_1,方便對比。

下載upx391w,并將其解壓到C盤下面(注:不知道為什么我放到F盤下沒法正常使用,可能是系統命令行的原因吧!)

運行電腦的命令行,輸入 cd C:\upx391w ?

再次輸入命令行: upx.exe ? F:\button_1\*dll

這樣就能將button_1下的所有dll文件進行壓縮了,下圖可以看出壓縮后的文件比壓縮前的文件小一倍,



當然你也可以如法炮制對iconengines等文件夾下的dll文件進行壓縮,當所有dll文件都壓縮完后,整個button_1文件夾的大小變為15.2M了,和上一步驟生成的單個可執行文件大小差不多了,比原來的39M小了一倍多。


但是,會發現不能對platforms文件夾中的dll文件進行壓縮,否則button_1文件夾下的ButtonTest5.exe不能正常運行了,出現如下圖示錯誤。所以在壓縮dll文件時不要對platforms文件夾內的dll文件進行壓縮,將platforms文件夾內的dll文件換回來就可以正常運行了。


這時你還可以仿照步驟3,用Enigma virtual Box將button_1文件夾內的ButtonTest5.exe進行制作成單個可執行文件。將生成的單個可執行文件命名為ButtonTest5_boxed11.exe,發現制作后的可執行文件大小為14.1M,相比較未壓縮dll文件制作的單個可執行文件15.6M小了一些。



另外,網上也有不少文章(如:http://blog.csdn.net/gzshun/article/details/7495488)介紹hap-depends + ASpack + filepack方法生成可執行文件的,自己嘗試用ASpack對button文件內的dll文件進行壓縮,結果生成的.bak文件反而更大,如下圖示,不知道是使用方法不對還是下載的軟件有問題。嘗試filepack封包結果也是不行,當然,很可能是自己使用不當的原因。



寫到這里,將自己寫的Qt測試小程序生成單個或者是簡單壓縮以單個文件夾的形式使用基本可以滿足需要了。

最后仍有很多不懂的東西,比如生成的單個可執行文件BottonTest5_boxed11.exe運行起來,通過Process Explorer軟件查看內存占用比程序本身還大,可能是Qt本身的原因吧!



《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的QT5生成可执行文件总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成年人天堂| 中文字幕三级电影 | 揄拍成人国产精品视频 | 黄污视频网站 | 国产精品久久久久久久久免费看 | 国产乱妇4p交换乱免费视频 | 日韩av一卡 | 亚洲国产理论 | 午夜av成人| 日韩av高清在线观看 | 91在线播 | 农村村妇真实偷人视频 | 影音先锋啪啪 | 成人av网站免费 | 亚洲一区二区在线免费观看 | 日韩亚洲一区二区 | 狠狠操夜夜爽 | 国产免费不卡 | 美女扒开尿口让男人捅爽 | 亚洲播播 | 亚洲av久久久噜噜噜熟女软件 | 久久国产小视频 | 草草影院最新 | 日韩中文字幕在线视频 | 九九热九九 | 黄色激情毛片 | 男人插女人视频网站 | 久久这里只有精品6 | 一炮成瘾1v1高h | 精品人妻在线一区二区三区 | 北条麻妃二三区 | 日韩亚洲欧美一区 | 精品久久久中文字幕 | 老司机午夜精品视频 | 日韩视频区| 在线播放少妇奶水过盛 | 你懂的网址在线观看 | 136福利视频导航 | 91无毒不卡| 婷婷另类小说 | ts人妖在线观看 | 国产精品老熟女视频一区二区 | 朝桐光在线观看 | 一道本在线视频 | 日本一级淫片1000部 | 手机av网站 | 婷婷天堂网 | 日韩一区二区在线观看 | 中文字幕在线免费 | 人妻丰满熟妇无码区免费 | 97在线观看免费 | 美女aaa| 亚洲免费视频网 | 综合色小说 | 进去里在线观看 | 天海翼一区二区三区 | 亚洲aⅴ | 色综合999 | 日本裸体动漫 | 国产美女久久久久久 | 天堂av在线免费 | 日韩在线中文字幕视频 | 日本护士╳╳╳hd少妇 | 爱情岛论坛亚洲品质自拍视频 | 免费黄网站在线看 | 2018自拍偷拍 | 69av网站 | 啪啪av导航 | 亚洲一区二区三区在线免费观看 | 亚洲av成人无码一二三在线观看 | 国产在线xxx | 久久aⅴ乱码一区二区三区 亚洲成人18 | 黄色成人免费网站 | 一级片在线免费看 | 久久深夜 | 狠狠干in| 女人18毛片毛片毛片毛片区二 | 吃瓜网今日吃瓜 热门大瓜 色婷在线 | 亚洲精品一品 | 麻豆视频在线观看免费 | 欧美性猛交xxx乱大交3 | 韩国一区二区在线观看 | 欧美日本道 | 91精品国产高清一区二区三密臀 | 天堂av2014| 成人久久电影 | 国产精品白浆一区二小说 | 久久久久久亚洲精品中文字幕 | 午夜国产福利在线观看 | 91丝袜呻吟高潮美腿白嫩在线观看 | 久久禁 | 中文字幕av免费观看 | 精品人妻一区二区免费视频 | 嫩草99| 国产免费啪啪 | 色老板精品凹凸在线视频观看 | 69福利网| 国产一区免费 | 国产最新视频 |