2013-01-05 63 views

回答

71

這裏有完整的說明:

  • 得到它:

    git clone https://github.com/mxe/mxe.git 
    
  • 安裝build dependencies

  • 建5的Qt適用於Windows:

    cd mxe && make qtbase 
    

    這將首先構建它的依賴關係和跨構建工具; 它應該需要不到一個小時的快速機器與體面的互聯網接入。

    由於Qt 5的新模塊化特性,各種主要的Qt組件現在都在不同的tarball中。上面選擇的那個,qtbase應該給你足夠的功能來運行普通的GUI應用程序,這是我自己的(小的)應用程序所需要的。

    如果您想要構建所有Qt 5,則需要運行make qt5(而不是make qtbase)。請注意,完成所需的時間會更長,因此請確保您需要額外的功能。

  • 獲取到您的應用程序的目錄,並運行Qt的Makefile生成工具:

    <mxe root>/usr/bin/i686-w64-mingw32.static-qmake-qt5 
    
  • 生成項目:

    make 
    
  • 你會發現在二進制./發佈目錄:

    wine release/foo.exe 
    

一些注意事項:

  • 這是對我的64位Debian的8測試,並在課程的窗口。

  • 輸出是一個32位靜態可執行文件,它可以在64位Windows上正常運行。

  • 如果你想有一個64位可執行文件,建立Qt的有:

    make MXE_TARGETS=x86_64-w64-mingw32.static qtbase 
    

    默認MXE_TARGETS值是i686-w64-mingw32.static

+0

怎樣才能改變這種MXE QMAKE吐出的東西外面的目錄?我在./build中生成了典型的qmake文件和文件夾,但mxe qmake拋棄了我的項目根目錄 –

+1

您是否找到答案了?如果不是,我不知道,也許會作爲一個單獨的問題提出。 – Tshepang

+0

絕對使用msys2而不是MXE。隨着msys2可以安裝預建的mingw32和Qt的mingw64二進制文件使用一個命令'吃豆子-S的mingw32/MinGW的-W64-i686的-QT-creator'或'吃豆子-S mingw64/MinGW的-W64-x86_64的-QT-creator' –

5

git checkout命令不正確。你現在必須得到穩定的分支,否則將會失敗。

git clone https://github.com/mxe/mxe.git 

應該是...

git clone -b stable https://github.com/mxe/mxe.git 

這本身就修好了我與qtbase建築,但在完成時不留QT文件夾中的所有問題。然後qt5目標會失敗,並帶有模糊的錯誤。刪除的文件夾,檢出穩定,並完美地工作。

+1

我想這只是一個暫時性的問題...'master'的現在工作了,我實際上並不記得當時當它失敗時,儘管我大多建立'qtbase',而不是更大的'qt5'。 – Tshepang

+0

混帳克隆-b穩定https://github.com/mxe/mxe.git是不是爲我工作 – j35t3r

+1

@ j35t3r我不認爲一個'stable'分支存在了。 – Marcus

相關問題