編譯單一QT執行檔 – 利用 MXE (M cross environment) 流程

之前有一篇討論如何用 Enigma Virtualbox 來將 QT 打包成單一執行檔,以進行佈署的文章。但用這個方法在 Windows 上進行的話,會需要很多手動的步驟,有點麻煩。

雖然印象中好像有另一套軟體,可以打包成單一執行檔,但最後還是沒想起來,於是就重新研究了一遍。剛才發現原來之前已經研究過了,是「 Linux 下交叉編譯 Windows 的 QT 程式」這篇文章的說明。不過想說都研究了,還是把過程寫下來好了。

編譯環境

其本上是使用 Ubuntu 20.04 來進行,現在發現用 docker 拉下ubuntu:20.04來做也是可以,就不用重新再灌系統了。在 18.04 有失敗過,所以建議用 20.04 來跑就好了。

編譯指令

這裡編譯的是 qt5,而且同時編譯出 x86和 x64 的版本,差不多要一個小時以上,若只要一種的請自行修改 MXE_TARGET這個參數。其中 qtconnectivity 因為編不過,也用不上,就直接把該.mk檔刪除,就不用編譯該項目了。

 

使用

完成後,檔案就在 usr/bin 下面了,請參考之前的文章描述的使用方式。

Leave a Reply(Name請以user_開頭,否則會被判定會垃圾息)

請輸入答案 9 × = 72