はじめに
とあるプログラムを実行しようとしたらQt6が必要だったので、WSL2にインストールしようとしたら、aptが使用できず少し手間だったので手順を記しておきます。
事前にネットで調べたところ、aptでインストールできるようだったのですが(少なくともQt5は出来たようなのですが)、自分が試した限りではQt5もQt6もそんなパッケージが無いと言われてしまいましたので、何か変更になったようです。
QtはQtのホームページからインストーラを入手するのが公式の手順のようですが(補足参照)、Qtアカウントの作成とか必要だったので、GitHubからソースコードを取得し、ビルド、インストールしてみました。
とりあえず手近な3台のPCでは動作しています。
インストール手順
ビルドするために以下のツールを事前にインストールします。一般的なものですので既に入っているかと思います。
sudo apt -y install build-essential gcc g++ make cmake libtool texinfo dpkg-dev pkg-config
以下はWSL2の環境に固有かも知れませんが必要です。
sudo apt -y install libxcb-glx0 libglu1-mesa-dev libxcb-xinerama0 libxcb-cursor0
準備が出来たら、以下の手順で、GitHubからソースコード一式を取得しビルド、インストールします。
cd /tmp
rm -rf qtbase
git clone https://github.com/qt/qtbase.git
cd qtbase
./configure --prefix=/usr/local -opensource
make
sudo make install
途中でエラーが出なければ成功です。
MSYS2(MinGW)との干渉
前述の手順で、ビルド時にエラーとなるPCがありました。Makeの実行時に、Windowsネイティブ側のMSYS2(MinGW)を参照しようとして当然ながらエラーとなっていました。
どうやら、WindowsにMSYS2(MinGW)がインストールされていると、CMakeが環境を見誤ってmakefileを作ってしまうようです。WindowsからMSYS2(MinGW)をアンインストールしたところ正常に動作するようになりました。
試してませんが、アンインストールせずとも、PATHからMSYS2(MinGW)を外す、または、WSL2の設定でWindsowのPATH設定を引き継がないようにすれば大丈夫かと思います。先にMSYS2(MinGW)をアンインストールしてしまったので試せませんでした。
補足:Qtホームページからのインストール
以下のURLがQtのダウンロードページです。
https://www.qt.io/ja-jp/download#eval-form-modal
「すべての商用パッケージとコンポーネントを含む10日間の無料評価版」がどんとありますが、右側の「オープンソースについて」を選ぶと、オープンソース版のページに進み、下の方に「Download the Qt Online Installer」があります。Qtアカウントの作成が必要で、この時点で面倒になってGitHubから入手しました。
なお、Qtは商用ライセンスとオープンソース・ライセンス(GPL&LGPL)の選択がありますので、製品とか商利用を考えている方は良く調べましょう。本稿の手順はオープンソースです。ライセンス変更は出来ないようなので注意してください。