<QT開發(fā)> QT開發(fā)工具-之-QT應(yīng)用程序打包
一 前言
筆者為什么會寫這篇文章呢?這是因為,筆者使用windows QT開發(fā)了一個測試工具。目的是通過TCP/IP測試其它應(yīng)用程序。首先這個QT程序是筆者自己開發(fā)的,所以筆者的電腦當然是可以運行這個QT程序的,但是想要這個QT程序在其它同事的電腦上運行怎么辦?他的電腦又沒有安裝QT程序;而且也沒必要直接給QT源碼。 所以就產(chǎn)生了一個需求:如何將編譯后的QT程序打包成單獨的exe執(zhí)行文件,然后這個單獨的exe文件,就可以再其它沒有安裝QT的電腦上運行了。
基于上述要求,我們以一個簡單的QT程序為例,講解如何打包執(zhí)行文件。
QT安裝可參考筆者另一篇文章:<QT開發(fā)> QT開發(fā)工具-之-QT安裝
二 新建測試QT工程
2.1 新建QT工程
在電腦桌面新建文件夾“QT_TEST”,如下圖:
打開開始菜單,選擇QT,現(xiàn)在已安裝的“Qt Creator”;筆者安裝的是“Qt Creator 9.0.2”,所以就選擇這個了。
打開后界面如下:
點擊 :創(chuàng)建項目 ,參考下圖筆者選擇即可,如果有其他要求可自行創(chuàng)建。
輸入項目名稱可存儲路徑,筆者這里就存在前面桌面創(chuàng)建的QT_TEST目錄中,如下圖:
選擇qmake編譯程序,當然讀者有要求也可以選用cmake等,如下圖:
生成模板程序的,主界面類名稱和文件名等的設(shè)置,這些都是用默認的名稱即可,如下圖:
選擇是否翻譯的語言,這里就選“無”,有要求的讀者,可自行選擇。如下圖:
選擇編譯使用的kit工具,筆者選擇6.2.4 64bit 如下圖,按需選擇即可;
項目管理配置,默認選擇“無”即可,如下圖:
點擊完成后,就會自動打開前面配置的QT工程了,如下圖:
2.2 添加UI
在2.1小節(jié)打開的界面中,雙擊“mainwindow.ui”這個文件,就會進入UI編輯界面,如下圖:
將左側(cè)的控件,拖拽到右側(cè)空白區(qū)域,讀者可自行選擇,筆者操作如下圖:
至此我們的QT測試例程準備完畢。
三 編譯QT
要想打包程序,那么得先將QT程序編譯成可執(zhí)行文件;編譯分“Debug”和“Release”兩個版本;對于需要打包的程序來說,一般都是編譯Release版本。
QT界面左下方,可選擇編譯的版本,選擇“Release”,如下圖:
選擇"Release"完成后,就可點擊下方的編譯按鍵,進行編譯,如下圖:
有彈框保存,點擊“Save All”即可,如下圖:
等待編譯完成后會顯示程序界面,如下圖:
同時,在存放工程的路徑下會生成編譯的數(shù)據(jù)文件,如下圖:
四 打包QT執(zhí)行文件
4.1 準備構(gòu)建QT執(zhí)行文件
首先,在xxx/Desktop\QT_TEST 目錄下新建一個文件夾,名為“APP”,如下圖:
將Release輸出目錄下的執(zhí)行文件復(fù)制到APP文件夾中,如下圖:
這時如果單獨運行“QT_TEST.exe”,是會提示錯誤的,找不到對應(yīng)的依賴文件庫等;如下圖:
這時就是要使用QT自帶的windeployqt 工具,來生成依賴的文件。
4.2 使用windeployqt 構(gòu)建QT執(zhí)行文件依賴庫
打開QT commend,如下圖:
注意:這里選擇的cmd 要與 構(gòu)建QT的kit版本保持一致。筆者用的是"MinGW 64 bit"
打開后如下圖:
輸入以下命令切換到APP目錄下:
G:\WorkSoft\QT6.2\6.2.4\mingw_64>C: C:\Windows\System32>CD ../.. C:\>cd Users\XX\Desktop\QT_TEST\APP C:\Users\XX\Desktop\QT_TEST\APP>
使用windeployqt 工程,生成關(guān)聯(lián)的QT庫文件到當前目錄下,命令如下:
windeployqt QT_TEST.exe
執(zhí)行完成后,會生成一些依賴文件,如下圖:
此時雙擊“QT_TEST.exe”,即可運行該QT程序,如下圖:
但是這樣是就有一個比較麻煩的地方,就是如果需要把這個“QT_TEST.exe”給到其它人,那么其所依賴的文件也要一起給出才行,這樣就顯得有些拖泥帶水了。
為了方便,我們需要將“QT_TEST.exe” 包括“APP“文件夾下 的整個內(nèi)容打包成一個.exe文件,這樣單獨的一個執(zhí)行文件就可直接運行了。
4.3 使用Enigma Virtual Box工具打包QT執(zhí)行文件
下載Enigma Virtual Box,該軟件是免費的,下載地址:官網(wǎng)
打開后,選擇”Enigma Virtual Box“的”Download“下載安裝包。筆者已下載的安裝包【Enigma Virtual Box】如下圖:
安裝完成后打開該軟件,如下圖:
根據(jù)下圖選擇,并配置:
①:找到對應(yīng)的執(zhí)行文件QT_TEST.exe,如下圖:
②:在①選擇完成的基礎(chǔ)上會默認一個輸出路徑,也可手動修改輸出路徑,筆者設(shè)置如下圖:
③:添加打包文件,選擇APP文件夾
④:選擇”Compress files“ 壓縮文件,如下圖:
⑤:點擊”Precess“,等待打包完成即可,如下圖:
打包完成后點擊”Close“關(guān)閉即可,也可直接點擊”Run“運行驗證。
五 運行驗證
打開QT_TEST文件夾,如下:
雙擊”QT_TEST_boxed.exe“運行:
驗證可知,打包后的執(zhí)行文件”QT_TEST_boxed.exe“可單獨運行;
后續(xù)就可以將”QT_TEST_boxed.exe“傳給其它PC運行,而不用關(guān)注運行依賴庫了。文章來源:http://www.zghlxwxcb.cn/news/detail-525222.html
六 總結(jié)
本文主要是講解QT程序打包步驟,方便QT執(zhí)行文件的發(fā)布使用,如果不足,歡迎溝通交流。文章來源地址http://www.zghlxwxcb.cn/news/detail-525222.html
到了這里,關(guān)于<QT開發(fā)> QT開發(fā)工具-之-QT應(yīng)用程序打包的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!