質問: VisualStudio2015でQt5.8,OpenCV2.2を使用してデスクトップアプリを作っています。 Microsoft Visual Studio 2015 Installer Projects を使用してインストーラーを作成し、試しに他のPCにインストールしてみたのですがソフトが起動し QtCore.dllが見つかりません とメッセージが出ました。 インストール先のフォルダをみたところ、実行ファイルが一つあるだけでしたので、おそらく QtCore.dllだけでなく、外部ライブラリのdllファイルが全て移植できていません。 質問は以下の3点になります。 (1) Qtプロジェクトはwindeployqt.exeでプロジェクトに関連しているライブラリを自動で検索して実行ファイルと同じ場所に移動してくれるようですが、これはQtCreatorで作っているプロジェクトでのみ使用できるものなのでしょうか。 (2) VisualStudioの機能で、関連ライブラリを一まとめに移動してくれる機能はないのでしょうか。 (3) これらの問題は、動的リンクではなく、静的リンクにすれば簡単に解決する問題ですか。
回答: もう3月前の質問になりますが、回答しますね。 (もし、解決済みなら、質問者なら可能な"自己解決した方法"だったかな? それを押して、どのように解決したかを記述してください。未来の他の方のヒントになるので。 ) 私はQt( on C++ ) でやっていますが、QtCreatorは使いきれないので MinGW でやっています。 その場合は QtCore.dll がない云々で起動できません。 なので、私は Windows の Explorer の検索窓から "QtCore.dll"と打って検索したり、 コマンドプロンプトで ``` DIR *QtCore.dll /S /B > result.txt ``` みたいにして検索し、そのDLLを**コピー**して実行ファイルと同じディレクトリに置きました。 ( 別に移動でもいいですが、元のファイルがなくなるので。 ) パスはわかりません ( 手元にないので ) が、必要なDLLが入っているディレクトリがQtのパッケージに含まれています。 それを使います。 リリースすることを"**デプロイ**"というようです。 なので「Qt デプロイ」等で検索してみてください。 サイト1, サイト2, サイト3 で、サイト4 ( 私も同じような質問をした気がする... ) ただ、注意してほしいのは、Qtは**LGPL**っていうライセンスらしいです。 私はあまり詳しくない ( 質問したけど、まだよくわかってない... ) のでわかりませんが、 ソースコードの開示請求があった場合、開示しないといけないようです。( 組み方によるらしいですが。 )