質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Qt

QtはGUIプログラムの開発で広く使われているクロスプラットフォーム開発のフレームワークです。

Q&A

1回答

3819閲覧

Qt OpenCV 等の外部ライブラリを含むVisualStudioのプロジェクトを配布したい

hama99

総合スコア11

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

Qt

QtはGUIプログラムの開発で広く使われているクロスプラットフォーム開発のフレームワークです。

0グッド

0クリップ

投稿2017/12/11 09:46

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)
これらの問題は、動的リンクではなく、静的リンクにすれば簡単に解決する問題ですか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2017/12/13 10:11

C++で開発しているのであればC++のタグも付けてみてはいかがでしょうか?
退会済みユーザー

退会済みユーザー

2017/12/13 10:13

(1)(2)についてはQtもInstaller Projectsも使ったことがないのでわかりませんが、(3)については依存するライブラリを全て静的にリンクすれば大丈夫だと思います。実行ファイルのサイズがその分大きくなるのと、Qtのライセンス上ソースコードの開示が必要になるかもですが。
guest

回答1

0

もう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っていうライセンスらしいです。

私はあまり詳しくない ( 質問したけど、まだよくわかってない... ) のでわかりませんが、

ソースコードの開示請求があった場合、開示しないといけないようです。( 組み方によるらしいですが。 )

投稿2018/04/07 08:26

BeatStar

総合スコア4958

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問