QT程序多平台下可執行文件的打包方式


一、簡述

QT項目開發完成后,需要打包發布程序,在實際生產中不可能把源碼發給別人,所以需要將源碼打包正可執行文件或者安裝程序。

二、設置應用圖標

把 ico 文件放到源代碼目錄下,在QT項目中的'.pro'文件中添加自己准備好的ico文件(使用QT默認生成的圖標時,可以跳過這一步)

RC_ICONS = user.ico // user.ico是自己的圖標名稱

三、打包windows系統下的可執行文件

  1. 以 Release 方式編譯生成 exe 程序,也就是使用Release模式調試程序。
  2. 編譯完成后會在項目文件下生成一個'build-Qt_hello_word-Desktop_Qt_5_12_9_MinGW_64_bit-Release'文件,在文件release中找.可執行文件
  3. 現在的可執行文件是不可運行的,會提示找不到.dll文件
  4. 創建'QT_test'文件,將生成的.exe文件拷到'QT_test'文件中
  5. 打開MinGW,進入到'QT_test'文件路徑下

  6. 在MinGW中使用windeployqt命令打包程序
windeployqt Qt_hello_word.exe


7. 執行完成后文件中會生成很多dll文件,這樣我們的可執行文件就已經制作完成了,點擊.exe文件就可以直接運行


8. 使用Inno Setup軟件可以將執行文件打包成安裝軟件,在這里我就不過多介紹了,需要的小伙伴可以查看這篇博客,這里我就直接引用一下Qt 程序發布以及打包成exe安裝包
Inno Setup軟件的下載地址:https://jrsoftware.org/isdl.php

四、打包linux系統下的可執行文件

linux系統下打包成成可執行文件有兩種方式,如果系統中安裝有QtCreator軟件,直接以Release方式編譯運行即可生成可執行文件,這里主要介紹一下qmake的使用。

  1. 安裝qmake軟件
    在linux系統下打包可執行文件需要使用qmake軟件,沒有安裝的可以安裝一下
sudo apt-get install qtchooser
  1. 將windows系統下的qt項目拷貝到linux系統下,將.pro.user文件刪除

  2. 執行qmake命令生成Makefile文件
  3. 使用make編譯生成可執行文件
  4. 運行程序./hello_word

五、打包ARM環境下的可執行文件

打包ARM平台下的可執行文件和linux系統下的方式是一樣的,同樣的有兩種方式,只不過ARM的qmake是qt-everywhere-src-5.12.9源碼編譯生成的軟件,編譯完成后在路徑'arm-qt/bin'路徑下會生成qmake軟件,不知道怎么編譯的小伙伴可以看我之前的QT之ARM平台的移植

  1. 使用qmake軟件的方式編譯
    生成Makefile文件並編譯
/home/linux/arm-qt/bin/qmake
make


2. 以Release方式編譯
在linux中裝有QtCreator軟件的小伙伴可以在軟件中添加arm環境下的qmake軟件,直接以Release方式編譯即可生成執行文件。
打開 Qt Creator 界面,找到 Tools(工具)→Options(選項)。

按下圖步驟,找到ARM平台的qmake。

配置C/C++編譯器為 arm-linux-gnueabihf-g++

配置Kits

運行程序

編譯完成后將會在項目文件夾中生成ARM環境的可執行文件

參考文獻

Qt 程序發布以及打包成exe安裝包:https://www.cnblogs.com/ybqjymy/p/13540451.html
QT5程序打包發布,最終生成一個.exe執行程序:http://blog.sina.com.cn/s/blog_96c6e6ef0102zx8y.html


免責聲明!

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



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