3

私の友人に小さなプロジェクトのリリース ビルドを提供したいと考えています。qtcreator 内から起動すると問題なく動作しますが、.exe ファイルをダブルクリックしても開きません。エラーメッセージすら表示されません。

いくつかの Qt .dll ファイル (Qt5Core.dll、Qt5Gui.dll、Qt5Widgets.dll など) を exe ファイルの横にコピーしようとしても、何も変わりませんでした。プロジェクトの依存関係を知るにはどうすればよいですか? .pro ファイルはあまり教えてくれません

QT       += core gui

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = project1
TEMPLATE = app


SOURCES += main.cpp\
    mainwindow.cpp

HEADERS  += mainwindow.h

FORMS    += mainwindow.ui

私はWindows 7(64ビット)、Qt 5.0.0(32ビット)に基づくQt Creator 2.6.1で作業しています

助けてくれてありがとうサディク

編集:解決策は私の答えで見ることができます

4

4 に答える 4

4

解決しました!私がしなければならなかったのは、「libEGL.dll」をダウンロードして、私の exe ファイルがあるディレクトリに置くことだけでした。もちろん、qt の他のすべての .dll ファイルも必要でした。しかし、これらはエラー メッセージで明示的に言及されていました。しかし、" libEGL.dll " については、エラー メッセージさえありません。「依存関係ウォーカー」にリストされた .dll ファイルは無視できます。私の問題では、このツールはあまり役に立ちませんでした。libEGL.dll はリストされませんでしたが、実際には使用されていない他の .dll ファイルがリストされました。

于 2013-01-27T01:51:09.980 に答える
2

Qt5について話しているので、program.exeファイルのディレクトリのplatforms少なくともその場所にディレクトリがあることを確認してください。qminimal.dllこれらは、Qtに加えられた新しい変更の一部です。(おそらくqwindows.dll同様に)。

msvcr*.dllさらに、静的にリンクされた状態でコンパイルしない場合は、適切なdllが含まれていることを確認してください。依存関係ウォーカーに確認してください。

/myProgram.exe 
/Qt5Gui.dll
/Qt5Core.dll
/ .... (other DLLs you require)
/platforms/qminimal.dll
/platforms/qwindows.dll (Not always required)
于 2013-01-26T19:41:17.453 に答える
2
How can I know what dependencies my project has?

公式サイトのDependency Walkerプログラムを使用して、プログラムに必要な dll を確認できます。

: 同じバージョンの Qt dll を使用してください (Qt5 を使用している場合は、Qt5 のbinディレクトリなどから dll を見つけてください)。

于 2013-01-26T14:33:45.700 に答える
1

どのコンパイラを使用していますか? コンパイラのランタイム DLL ファイルをバンドルするか、MSVC++ を使用している場合は、ユーザーに Microsoft Visual C++ 再頒布可能パッケージをインストールしてもらう必要があります。

于 2013-01-26T14:34:34.420 に答える