Help us understand the problem. What is going on with this article?

Qt Creatorでビルドした.exeファイルを実行/配布する

Qt Creatorでビルドするとワークディレクトリ以下に.exeファイルが生成されるが、依存関係の問題で、そのままダブルクリックしても実行できない。
これをQtCreatorなしで実行、及び実行可能な状態で配布する簡単な手順を示す。

パスを通す(コンパイルした環境で実行したい)

特別な依存関係は、主に以下の2つ
(インストールディレクトリ・バージョン・コンパイラによって読み替えてください)
* C:\Qt\5.12.4\mingw73_64\bin
* C:\Qt\Tools\mingw730_64\bin
これを環境変数に当てておけばダブルクリックで実行できる。

cmdで実行するなら

run_qtapp.bat
set PATH=C:\Qt\5.12.4\mingw73_64\bin;C:\Qt\Tools\mingw730_64\bin;%PATH%
hoge.exe

依存関係を集める(依存ライブラリとセットで配布したい)

Qt SDKについてくるwindeployqt.exeを使うと、必要な依存関係を集めてくれる。
C:\Qt\5.12.4\mingw73_64\bin\windeployqt.exe
(同じくインストールディレクトリ、バージョンとコンパイラで読み替えてください。)

使い方は簡単
Qt Creatorがビルドした.exeファイルに対して実行するだけ

mkdir .\DISTDIR
copy path\to\QTAPP.exe .\DISTDIR
// qmlがある場合
"C:\Qt\5.12.4\mingw73_64\bin\windeployqt.exe" .\DISTDIR\QTAPP.exe --qmldir path\to\SOURCE
// qmlがない場合
"C:\Qt\5.12.4\mingw73_64\bin\windeployqt.exe" .\DISTDIR\QTAPP.exe

必要なライブラリがDISTDIRに集まるので、ディレクトリごと配布すればよい。

koyayashi
Sierのしがないエンジニア 仕事ではcppやQt、プライベートではNode.jsを勉強中
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした