天天看點

QT 應用程式設計: 應用程式動态釋出

一、QT程式釋出方式

Qt 釋出的時候,通常使用兩種方式:

(1)靜态編譯

(2)動态編譯

靜态編譯:把相關聯的庫一并引入可執行程式,雖然釋出簡單,但可執行程式本身較大。

動态編譯:相關聯的庫,以 dll 的形式引用,不被包含進可執行程式,附帶的dll檔案較多,但可執行程式本身較小。

二、動态打包釋出

2.1 打包工具

在QT5以後的版本中,Qt 的編譯器安裝包裡自帶了一個打包工具: windeployqt.exe

windeployqt 工具可以自動複制插件檔案夾和 dll 檔案、 qm 檔案到程式目錄。,可以得到完整的 exe 程式釋出集合,解決所有的依賴關系,不用手動去一個一個複制(QT4程式釋出就需要自己手打複制,比較麻煩)。

2.2 準備工作

1. 需要一個完整正常編譯的 QT 工程。

2. 編譯的時候選擇 Release 方式部署(不要選擇Debug方式)。

QT 應用程式設計: 應用程式動态釋出
QT 應用程式設計: 應用程式動态釋出

2.3  windeployqt.exe 工具位置

windeployqt.exe 工具在 QT 的安裝目錄下。

比如:

MINGW 編譯器:

C:\app_setup\for_QtQt5.5.1\5.5\mingw492_32\bin\windeployqt.exe

VS 編譯器:

D:\Qt\Qt5.5.0\5.5\msvc2010\bin\windeployqt.exe

目前 QT程式 采用哪一個編譯器, 就選擇對應的 windeployqt.exe 程式。

2.4 打包釋出(自動尋找依賴)

第一步:  将 QT 編譯生成的 xxx.exe 可執行檔案拷貝到一個單獨的檔案夾。

QT 應用程式設計: 應用程式動态釋出

第二步: 按下鍵盤上的windows按鈕,打開視窗清單,找到QT安裝的位置(按字母排序的Q),選擇目前QT程式編譯時使用的編譯器,打開指令行終端。

QT 應用程式設計: 應用程式動态釋出

 第三步:  切換到QT程式存放的目錄下。

QT 應用程式設計: 應用程式動态釋出
QT 應用程式設計: 應用程式動态釋出

釋出成功:

QT 應用程式設計: 應用程式動态釋出

繼續閱讀