2

Windows 8Prox64でQtCreator2.6.0でQt4.8.3オープンソースを使用しています。私が使用しているコンパイラはMingW4.4です。

Qt4.8.0を使用して構築した古いプロジェクトがあります。プロジェクトには、という名前のリソースファイルがありますResource.qrc。プロジェクトはQt4.8.0で正常にコンパイルされ、リソースファイルに記載されているすべてのものにアクセスできました。

しかし、Qt 4.8.3では、同じプロジェクトをコンパイルできません。Qt4.8.3はリソースファイルをコンパイルできないようです。Resource.qrcファイルをコンパイルしようとした出力の一部は次のとおりです。

bin\rcc.exe -name Resource ..\Source\Resource.qrc -o release\qrc_Resource.cpp
mingw32-make[1]: Leaving directory `E:/Programs/Version Control/Sources/Spadetrump/Release'
process_begin: CreateProcess(NULL, bin\rcc.exe -name Resource ..\Source\Resource.qrc -o release\qrc_Resource.cpp, ...) failed.
make (e=2): The system cannot find the file specified.
mingw32-make[1]: *** [release/qrc_Resource.cpp] Error 2
mingw32-make: *** [release] Error 2
00:08:10: The process "C:\MingW\bin\mingw32-make.exe" exited with code 2.
Error while building/deploying project Spadetrump (target: Desktop)
When executing step 'Make'

クリーンなビルドでした。rcc.exeまったく同じ引数と絶対パスを使用して実行すると、qrc_Resource.cppが生成されます。

新しいQtGUIアプリケーションで上記を試しましたが、結果は同じです。

Qt 4.8.3の何が問題になっていますか?

4

1 に答える 1

3

同じセットアップであなたとまったく同じ問題がありました。私にとってはxpであるWindowsバージョンを期待してください。問題は、rcc.exe が見つからないことです。これは、その呼び出しに間違ったパスが使用されているためです。

この問題については、qt-projects にバグレポートがあります: https://bugreports.qt.io/browse/QTBUG-27237

Daniel Frömmel によって提案された回避策は、私のためにトリックを行いました:

1) プラットフォームの qmake.conf を開きます (私にとっては C:\Qt\4.8.3\mkspecs\win32-g++)
2) QMAKE_IDC を検索します
3) QMAKE_IDC 行の後に次の行を追加します: QMAKE_RCC = $$[ QT_INSTALL_BINS]$${DIR_SEPARATOR}rcc.exe
4) ファイルを保存して clsoe
5) すべての開発ツールを再起動し、自動生成された Makefile をすべて削除します
6) 再コンパイルします

于 2012-11-21T13:15:39.233 に答える