LoginSignup
9
8

More than 3 years have passed since last update.

Windows 10で therecipe/qt を使うまで

Last updated at Posted at 2019-03-06

1. 前提条件

  • https://github.com/therecipe/qt でGUIなアプリを作るための下準備をする。
  • (Fast track版ではなく)Official版をインストールする。

1-1. PC環境

  • Windows 10 Pro (バージョン1803)
  • Intel Core i5-8250U @ 1.60GHz
  • 8GBメモリ
  • PowerShellを使っていますが、コマンドプロンプトでも同じ
  • HTTP(S)のプロキシサーバーに接続する場合、環境変数 http_proxy, https_proxyを設定しておく。

2. Goのインストール

https://dl.google.com/go/go1.12.windows-amd64.msi
をダウンロード、インストール

  • コントロールパネルの(システム)環境変数で、以下の設定を確認しておく。
変数
GOPATH C:\Users\your-name\go
PATH C:\Go\bin と C:\Users\your-name\go\bin を追加
GOCACHE on
GOROOT C:\Go\
  • Go 1.12 (Windows) では、 GOCACHE が on でないと何かとうまくいかないので注意。
  • Go 1.13 (Windows) では、GOCACHE が C:\Users\your-name\AppData\Local\go-build などとしておく。

3. Qtのインストール

https://download.qt.io/archive/qt/5.12/5.12.0/qt-opensource-windows-x86-5.12.0.exe.mirrorlist
より、5.12.0 版のオフラインインストーラーを入手、インストール。コンポーネントの選択はは以下の通り。Qt ChartsからQt Scriptまではお好みで。(※1)

qtinstaller.PNG

※1: お好みでと書いておきながら、ビルド時にいちいちLoadModuleできないぞと怒られる(使っていなければ実害はないが)ので、容量に余裕があればQt Charts から Qt Scriptまでを入れておくのが吉のようだ。

4. therecipe/qt のインストールとテスト実行

コマンド プロンプトで、

set GO111MODULE=off
go get -v github.com/therecipe/qt/cmd/... && for /f %v in ('go env GOPATH') do %v\bin\qtsetup test && %v\bin\qtsetup -test=false

を実行。インストールしていないモジュールについては、

time="2019-03-06T18:24:47+09:00" level=error msg="failed to load C:\\Qt\\Qt5.12.0\\Docs\\Qt-5.12.0\\qtscript\\qtscript.index" error="open C:\\Qt\\Qt5.12.0\\Docs\\Qt-5.12.0\\qtscript\\qtscript.index: The system cannot find the path specified."time="2019-03-06T18:24:47+09:00" level=warning msg=parser.LoadModule error=EOF module=Script

のようなエラーが出るが、気にしない。

環境によりますが、私の環境だと40分ほど待ったのちに、

qtexample.PNG

のような、7つのサンプルアプリのテストビルドが成功して完了する。ここまでくれば、とりあえず安心。

  • Qt 5.13ではDeprecatedとなっているQt Scriptもインストールしておいかないと、テスト実行時にエラーとなる。うーむ…。

5. 最終確認

インストールがうまく行っている場合、以下のコマンドでビルドできる。

qtdeploy.exe build windows

その他

  • Windows 10 (1903) / Go 1.13.4 / Qt 5.13 MinGW 版(スタンドアローンインストーラはこちら)の組み合わせでも確認。
  • Qtをバージョンアップしたら、C:\Qt\Qt5.13.0\Tools\mingw730_64 などにPATHを通しておかないとエラーになる。
  • Go 1.12 にアップデートしたら、色々と動かなくなって焦ったので再インストールしてみた次第。ついでに、ハマリどころがあれこれあったのでメモ。
  • コマンドがどこにあるか調べるのに、コマンドプロンプトでは where だが、 PowerShell だと Get-Command(またはgcm)なのでややこしい。
  • インストールがはじまって、qt/sql のところで10分くらい待たされた。qt/purchasingも少し待つ。気長に待つべし。
  • qtdeploy するときに、3 でインストールしなかったモジュールについてはエラーが出る。
  • ビルドするときにはsysoファイルのアーキテクチャも揃えておかないといけない。Qtと同時インストールしたMinGWに含まれるwindres.exeで生成できる。このツールはC:\Qt\Qt5.12.0\Tools\mingw730_64\binにあるのでパスを通しておくと良い。 使い方は、https://qiita.com/zetamatta/items/dd63a2ff4d01fdb6709a に詳しい。
9
8
3

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
8