天天看點

【QT】aarch64(ARM)系統下編譯aarch64(ARM)版本的QT

       網絡上大多都是x86_64系統下交叉編譯出ARM版本的QT,很少有直接在ARM系統下編譯出ARM版本QT的,因項目使用交叉編譯時不能将程式編譯通過(調用系統底層庫時因版本不同導緻編譯不成功),是以需要在ARM系統上直接編譯一個ARM版本的QT出來使用。

       第一步首先是登入QT網站将QT的源代碼下載下傳下來:https://download.qt.io/official_releases/qt/5.12/5.12.10/single/

【QT】aarch64(ARM)系統下編譯aarch64(ARM)版本的QT

      這裡用的是5.12.10版本的QT,其他版本的QT可以自行選擇,下載下傳解壓之後可以得到以下目錄:

【QT】aarch64(ARM)系統下編譯aarch64(ARM)版本的QT

     在編譯前需要确認系統已經具備以下軟體要求:

【QT】aarch64(ARM)系統下編譯aarch64(ARM)版本的QT

      确認具備以上軟體後執行以下指令:

./configure -prefix $PWD/qtbase <license> -nomake tests
           

      其中參數<license> 選擇如下:

開源使用者:
<license> = -opensource
商業版使用者:
<license> = -commercial
           

    而configure更多的參數可使用以下指令擷取詳細資訊:

configure -help
           

   比如想要指定編譯到指定的路徑下可以使用以下參數,我就指定在/opt路徑下:

【QT】aarch64(ARM)系統下編譯aarch64(ARM)版本的QT

   執行上述configure配置指令,等待一段系統配置編譯前的基本資訊,完成後将會出現一個Makefile檔案,裡面配置了編譯QT的基本資訊:

【QT】aarch64(ARM)系統下編譯aarch64(ARM)版本的QT

  随後執行以下指令,調用四核開啟漫長的編譯:

make -j4
           

  編譯大約需要一到兩個小時的時間,編譯完成後執行以下指令:

make install
           

  完成之後會編譯出以下檔案 :

【QT】aarch64(ARM)系統下編譯aarch64(ARM)版本的QT

 在bin目錄下就可以發現QT的編譯器qmake了,然後就可以用qmake來編譯QT程式了:

【QT】aarch64(ARM)系統下編譯aarch64(ARM)版本的QT