User Tools

Site Tools

study:qt-topic:20241113-002:index

Qt在Mac環境下製作dmg安裝包 (2024-11-13)

Local Backup

  • 1,編譯軟體的Release版本
    • 開發完Qt 專案後,我們需要將專案進行打包。首先,編譯一個Release版本號的軟體,此時編譯出來的套件大小非常小,這是由於一些類別庫還沒打包進去的原因,還處於開發環境。
  • 2,產生app文件
    • 生成app檔案需要藉助macdeployqt工具,該工具位於Qt安裝資料夾的bin檔案目錄下,如下圖所示。
    • macdeployqt使用非常簡單,切換到該bin目錄下,然後執行./macdeployqt appname.app 即可。例如:
    • ./macdeployqt  /Users/bilibili/qt/build-downloader-Desktop_Qt_5_12_6_clang_64bit-Release/downloader.appmacdeployqt
    • 執行完指令後,就會在appname.app所在資料夾下產生一個新的比較大的app。
  • 3,為app新增icon
    • 開發上一步驟產生的app,然後右鍵點選app,選擇顯示套件內容。
    • 裡面有個叫info.plist的文件,裡面記錄了非常多這個軟體的訊息,icon的資訊也記錄在這裡。首先把你製作好的圖示icns後綴的檔案複製到Resources資料夾下。關於icns製作,可以查看《Qt Mac 下軟體icns圖示製作》,然後編輯Info.plist文件,加上圖示資訊。
    • <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
      <plist version="1.0">
      <dict>
      	<key>CFBundleExecutable</key>
      	<string>downloader</string>
      	<key>CFBundleGetInfoString</key>
      	<string>Created by Qt/QMake</string>
      	<key>CFBundleIconFile</key>
      	<string>bilibili.icns</string>
      	<key>CFBundleIdentifier</key>
      	<string>com.yourcompany.downloader</string>
      	<key>CFBundlePackageType</key>
      	<string>APPL</string>
      	<key>CFBundleSignature</key>
      	<string>????</string>
      	<key>LSMinimumSystemVersion</key>
      	<string>10.12</string>
      	<key>NOTE</key>
      	<string>This file was generated by Qt/QMake.</string>
      	<key>NSPrincipalClass</key>
      	<string>NSApplication</string>
      	<key>NSSupportsAutomaticGraphicsSwitching</key>
      	<true/>
      </dict>
      </plist>
    • 其中,CFBundleIconFile 對應的值就是圖示的名稱。當然,做完這步發現app的圖示還是預設的,沒有更改成我們想要的圖示。此時右鍵點選app,選擇顯示資訊(GetInfo),然後把icns檔案拖曳到左上角的圖示位置。
  • 4,生成dmg安裝包
    • 接下來,我們來看看怎麼透過Disk Utility 產生dmg安裝套件。開啟finder-應用程式-實用工具-磁碟工具,然後建立一個空白的dmg鏡像,如下圖。
    • 系統預設會建立一個大小為100MB的dmg鏡像,最後製作出來的dmg檔案會自己主動裁切掉空白的。然後,右鍵點擊這個空白的dmg鏡像,就會打開一個空白的窗體。
    • 然後在dmg鏡像程式的空白處右鍵,選擇【查看顯示選項】,然後選擇圖片,並將準備好的圖片拖曳到方框裡面,如下圖。
    • 將上面製作好的app拉到空白鏡像dmg裡面,再做一個Applications快捷方式(右鍵–>Make Alias),將做好的dmg,轉換一下就完畢了。

Permalink study/qt-topic/20241113-002/index.txt · Last modified: 2024/11/13 09:45 by jethro

oeffentlich