問題
私は、Visual Studio 2005 で作成された Qt アプリケーションを持っています。これは、すべて 1 の構造体メンバー アライメントでコンパイルされたかなりの量の他のライブラリを使用しています。
これは明らかに、0 (他のライブラリが失敗する) または 1 (Qt が失敗する) 構造体メンバーの配置でアプリケーションをコンパイルすると問題を引き起こします。
私が試したこと
projects.pro ファイルのコンパイラ フラグ
- Qtのソースコードをダウンロードしました。
projects.pro ファイルの先頭に以下を追加しました
QMAKE_CXXFLAGS_DEBUG += -Zp1 QMAKE_CXXFLAGS_RELEASE += -Zp1
Visual Studio コマンドラインを使用して、メイクファイルを作成する configure.exe を開始しました。
- Qtをコンパイルするnmakeを開始しました。
これにより、Qt は 0 の構造体メンバーの配置でコンパイルされます。おそらく -Zp1 (/Zp1 も試しました) はコンパイラによって認識されませんが、これは Visual Studio がそのプロパティ ページでそれを使用する方法であるため、これは私を驚かせるでしょう:
makefile のコンパイラ フラグ
今はほぼ同じことをすることを検討していました:
- Qt のソースコードをダウンロードします。
- Visual Studio コマンドラインで configure.exe を実行します。
この時点で、構造体メンバーのアラインメント 1 を使用できるように変更できるメイクファイルがあります。ここでは成功しません。
私の質問
Qt for Visual Studio 2005 を構造体メンバーのアラインメント 1 でコンパイルするにはどうすればよいですか?