【Qt】Qt 5.11.2 を MinGW 64 bit 向けにビルドした
Qt は Qt Online Installer により複数の環境に対応したライブラリがインストールできます。しかし、Windows 向け g++ が利用できる MinGW の 64bit 環境に対応するものはなく、該当の環境での開発を望む場合、開発者自身の手でQtのソースからビルドする必要があります(少なくとも本記事の執筆時点には存在しませんでした)。
本記事では、前述のようなケースにある開発者を対象に、 Qt5.11.2 を MinGW 7.3.0 64 bit 対応の開発環境の構築手順を示します。
開発環境構築
構築手順は次のとおりです:
- Qt のソースを準備する
- ビルドのためのツールをインストールする
- Qt をビルドする
- Qt 開発環境を整える
1. Qt のソースを準備する
Qt Online Installer を利用して Qt をインストールします。 Qt Online Installer は次のダウンロードページから取得できます:
今回は Open Source 版を選択して、 Online Installer をダウンロードします。
参考:Online Installer のバージョンによる差は小さいと思いますが、本記事では
qt-unified-windows-x86-3.0.5-online.exe
を使用しています。
Qt Online Installer を実行します。 本記事では、次のようにインストールしました。
- Open Source 版を利用するため、 Qt Account は Skip しました。
- インストール先フォルダは、既定の
C:\Qt
としました。 - インストール項目の選択は次のとおりです:
- ライセンス条項は同意しました。
- スタートメニューは、既定の
Qt
としました。
参考:本記事では比較のため、
Qt/MinGW 5.3.0 32 bit
およびTools/MinGW 5.3.0 32 bit
を選択しています。必要がなければ、これらは未選択でも影響はありません。
2. ビルドのためのツールをインストールする
Qt のソースを準備できたら、ビルドのためのツールをインストールします。 ビルドの必要要件は次のとおりです:
ツール | バージョン |
---|---|
MinGW | gcc 4.9 以降 |
Perl | 5.12 以降 |
Python | 2.7 以降 |
Ruby | 1.9.3 以降 |
参考:ビルドの必要要件は
Qt/5.11.2/Src/README
に記載があります。
MinGW は Online Installer によりインストールされているので、 Perl, Python, Ruby のインストール方法を示します。
Perl をインストールする
Perl は次のダウンロードページからインストーラーが取得できます:
取得したインストーラーを実行してインストールします。
参考: ダウンロードページは
Qt/5.11.2/Src/README
に記載があったものです。 本記事作成時は、ダウンロードページに次の2バージョンありました。
- 5.24.3.2404
- 5.26.1.2601
本記事では最新の 5.26.1 をインストールしました。
Python をインストールする
Python は次のダウンロードページから取得できます:
取得したインストーラーを実行してインストールします。
参考: ダウンロードページは
Qt/5.11.2/Src/README
に記載があったものです。本記事作成時、ダウンロードページには次の3バージョンありました。
- 3.5.4.3504
- 2.7.14.2717
- 3.6.0.3600
本記事では 2.7.4 をインストールしました。
注意: ビルドでは Python 2.x 系が要求されます。
Ruby をインストールする
Ruby は次のダウンロードページからインストーラーが取得できます:
取得したインストーラーを実行してインストールします。
参考: ダウンロードページは
Qt/5.11.2/Src/README
に記載があったものです。 本記事では 2.4.4-2(x64) without devkit をインストールしました。
3. Qt をビルドする
いよいよ Qt5.11.2 を MinGW 7.3.0 64 bit 向けにビルドします。
管理者権限でコマンドプロンプトを立ち上げ、Qt 5.11.2 のフォルダに移動します。
>cd C:\Qt\5.11.2
続けて、次の2つのフォルダを作成します:
- インストール用のフォルダ
mingw73_64
- ビルド用のフォルダ
mingw73_64_build
>mkdir mingw73_64 >mkdir mingw73_64_build
作成したビルド用のフォルダ mingw73_64_build
に移動して、ビルド用のツールのPATHを通します。
>cd mingw73_64_build >set PATH=C:\Qt\Tools\mingw730_64\bin;C:\Qt\Tools\QtCreator\bin;%PATH%
上のコマンドは、各ビルド用ツール(Perl、Python、Ruby)のインストーラーでPATHを通してある状態のものです。 PATHを通さなかった場合は次のコマンドで PATH を通します:
>set PATH=C:\Qt\Tools\mingw730_64\bin;C:\Qt\Tools\QtCreator\bin;C:\Ruby24-x64\bin;C:\Python27\;C:\Python27\Scripts\;C:\Perl64\site\bin;C:\Perl64\bin;%PATH%
echo %PATH%
を実行し、PATHが通っていることを確認します。
>echo %PATH% C:\Qt\Tools\mingw730_64\bin;C:\Qt\Tools\QtCreator\bin;C:\Python27\;C:\Python27\Scripts\;C:\Perl64\site\bin;C:\Perl64\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;C:\Ruby24-x64\bin;C:\Users\dev\AppData\Local\Microsoft\WindowsApps
問題がなければ、configure
を実行し、ビルド設定をします(時間がかかることがあります)。
>..\Src\configure -developer-build -opensource -confirm-license -opengl desktop -nomake examples -nomake tests -prefix C:\Qt\5.11.2\mingw73_64
コマンドの意味は次のとおりです。
コマンドとオプション | 説明 | コメント |
---|---|---|
..\Src\configure | Src ディレクトリにある configure 本体。 | |
-developer-build | Qtをコンパイルしてリンクする。 | |
-opensource | OpenSource版でビルドする。 | |
-confirm-license | ライセンス条項に同意する(確認画面を表示しない)。 | |
-opengl desktop | デスクトップ OpenGL を使用する。 | 未指定だと QtGui でエラーが発生し、ビルド全体が失敗するため |
-nomake examples | 各モジュールの examples を作成しない。 | ビルド時間短縮のため |
-nomake tests | 各モジュールの tests を作成しない。 | qtwebglplugin のテストパートでエラーが発生し、ビルド全体が失敗するため |
-prefix C:\Qt\5.11.2\mingw73_64 | C:\Qt\5.11.2\mingw73_64 をインストール先とする。 |
その他のオプションは configure -h
で確認できます。
mingw32-make
を実行し、ビルドします(とても時間がかかることがあります)。
>mingw32-make
mingw32-make install
を実行し、インストールします(時間がかかることがあります)。
>mingw32-make install
C:\Qt\5.11.2\mingw73_64
にインストールされていることを確認します。
以上でビルド&インストールが終了です。
4. Qt 開発環境を整える
Qt開発を始めるには、次の2つのPATHを通す必要があります。
C:\Qt\5.11.2\mingw73_64\bin
C:\Qt\Tools\mingw730_64\bin
インストーラーからインストールした場合はスタートメニューが作成されますが、 ビルド&インストールの場合は作成されません。
そのため、 MinGW 5.3.0 32 bit 版を参考に同様の開発用ショートカットを作成します。
MinGW 5.3.0 32 bit 版ショートカットは、リンク先が次のようになっています:
C:\Windows\System32\cmd.exe /A /Q /K C:\Qt\5.11.2\mingw53_32\bin\qtenv2.bat
qtenv2.bat
は 64 bit 版に存在しないため、これを C:\Qt\5.11.2\mingw73_64\bin
に作成します。
作成する qtenv2.bat
の内容は次のとおりです:
@echo off echo Setting up environment for Qt usage... set PATH=C:\Qt\5.11.2\mingw73_64\bin;C:\Qt\Tools\mingw730_64\bin;%PATH% cd /D C:\Qt\5.11.2\mingw73_64
参考: 本質的な部分は3行目のみです。3行目以外はインストール版と同様の挙動にするためのコマンドです。
スタートメニューに次のリンク先でショートカットを作成します:
C:\Windows\System32\cmd.exe /A /Q /K C:\Qt\5.11.2\mingw73_64\bin\qtenv2.bat
以上で、開発用ショートカットの作成は終了です。
■