1

Qt 4.8.3 mingw 4.7 Windows 7 x64 を使用しています。exeファイルが動かない…

Problem signature:
  Problem Event Name:   APPCRASH
  Application Name: hello.exe
  Application Version:  0.0.0.0
  Application Timestamp:    509d1749
  Fault Module Name:    QtCore4.dll
  Fault Module Version: 4.8.3.0
  Fault Module Timestamp:   504ee1c2
  Exception Code:   c0000005
  Exception Offset: 001103e8
  OS Version:   6.1.7601.2.1.0.256.4
  Locale ID:    1067
  Additional Information 1: 0a9e
  Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
  Additional Information 3: 0a9e
  Additional Information 4: 0a9e372d3b4ad19135b953a78882e789

これは非常に単純なソース コードです。

#include <QApplication>
#include <QLabel>

int main(int argc, char *argv[])
{
   QApplication app(argc, argv);
   QLabel *label = new QLabel("Hello Qt!");

   label->show();

   return app.exec();
}
4

1 に答える 1

3

qt-project.org からダウンロードできる Qt 4.8.3 MinGW ライブラリは、MinGW 4.4 でビルドされています。そのライブラリを使用している場合、MinGW 4.7 を使用しようとすると問題が発生します。

MinGW 4.7.0 では、C++ クラス メンバーのデフォルトの呼び出し規約が に変更されたため__thiscall、MinGW 4.7.0 以降でビルドされた C++ プログラムは、以前のバージョンの MinGW でビルドされたライブラリまたはオブジェクト ファイルと互換性がありません。詳細については、 https://stackoverflow.com/a/13134812/12711を参照してください。

古いバージョンの MinGW (理想的には 4.4) を使用するか、使用しているバージョンの MinGW で Qt ライブラリを再構築する必要があります。Qt を再構築しようとして問題が発生した場合は、この SO の回答に役立つヒントが含まれている可能性があります。

于 2012-11-10T03:24:39.430 に答える