qt 4.8.3中的Qt资源系统错误

时间:2012-11-20 18:38:41

标签: c++ qt

我在Windows 8 Pro x64上使用Qt 4.8.3开源与Qt Creator 2.6.0。我正在使用的编译器是MingW 4.4。

我使用Qt 4.8.0构建了一个旧项目。该项目有一个名为Resource.qrc的资源文件。该项目在Qt 4.8.0中编译得很好,我可以访问我在资源文件中提到的所有内容。

但是在Qt 4.8.3中,我无法编译同一个项目。 Qt 4.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

我使用全新的Qt GUI应用程序尝试了上述操作,结果相同。

知道Qt 4.8.3有什么问题吗?

1 个答案:

答案 0 :(得分:3)

与您使用相同的设置有完全相同的问题,期望Windows版本对我来说是xp。问题是无法找到rcc.exe,因为该调用使用了错误的路径。

此问题在qt-projects上有一个错误报告:https://bugreports.qt.io/browse/QTBUG-27237

DanielFrö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)重新编译