qt windows下執行exe程序 windeployqt使用方法


轉載: https://blog.csdn.net/sinat_36264666/article/details/73305712

 

Qt 官方開發環境使用的動態鏈接庫方式,在發布生成的exe程序時,需要復制一大堆 dll,如果自己去復制dll,很可能丟三落四,導致exe在別的電腦里無法正常運行。

因此 Qt 官方開發環境里自帶了一個工具:windeployqt.exe。

問題的提出


既然是要發布自己的程序,那么就需要,在Release中編譯運行。具體方法如下圖所示。

1.點擊qt界面左下角的圖標;

2.選擇Release;

3.點擊編譯運行即可;
 

生成的程序運行正常之后,找到項目的生成目錄。比如,項目源碼路徑:
D:\OutPutResult\QtWorkPlace\DiyName
它的項目生成目錄是:
D:\OutPutResult\QtWorkPlace\build-DiyName-Desktop_Qt_5_8_0_MinGW_32bit-Release

我們可以發現,此時點擊.exe文件是會出問題的,解決辦法如下。

使用windeployqt工具,進行打包發布

1.首先進入上圖中這個文件夾,在里面,找到 DiyName.exe,將這個.exe 復制到一個新的單獨的文件夾里用於發布,比如存到 :
D:\OutFaBu 文件夾里面。

 

此時,這個文件只一個有剛剛從release文件夾下,復制過來的.exe文件。

2.以官方 Qt 5.8.0+MinGW 開發環境為例,
從開始菜單--》Qt 5.8.0--》5.8--》MinGW5.3.0 (32-bit)--》Qt 5.8 for Desktop (MinGW 5.3.0 32 bit)

可以打開 Qt 命令行,從這里就可以執行 windeployqt 工具。

3.然后從開始菜單打開 Qt 命令行,輸入命令 :
cd /d D:\OutFaBu
然后使用 windeployqt 工具命令:
windeployqt DiyName.exe

【注意】D:\OutFaBu和DiyName.exe都是本人自己創建和生成的文件,讀者根據自己情況自行修改,切勿直接復制粘貼

4.運行完成

此時,我們可以發現在剛剛創建的新文件夾D:\OutFaBu中生成許多文件和 dll文件、qm文件,這時候得到的就完整的 exe程序發布集合,依賴關系都解決好了。此時點擊DiyDame.exe文件就可完美的運行。

將整個文件夾壓縮打包就可以發布了,可以給其他電腦使用,是不是很方便。
 

 運行是可以正常運行了,效果和linux下運行的一樣,只是覺得大小挺大的,47M左右。linux下才380K。。。對比之后發現大了不止120倍。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM