Rcc crash building Qt 5



  • Hi all.

    I'm new here but I have years of experience in Qt. I've built Qt 4 many times without problems but Qt 5 seems more complex.

    I'm trying to build Qt 5 with Visual Studio 2008 SP1 and Windows SDK 7.0 on Windows Vista SP2, following the guide "Building Qt 5 from Git".

    I think my configuration is ok, because running the configure tool with the following command...
    @
    configure -developer-build -opensource -nomake examples -nomake tests -platform win32-msvc2008 -plugin-sql-sqlite
    @

    ... I get the result in the following post ( The maximum number of allowed characters is 6000 for thi post :( )

    Then I run nmake, but the first time that rcc is executed, it crashes and I get the following output:

    @
    C:\Qt\qt5\qtbase\bin\rcc.exe -name mimetypes mimetypes\mimetypes.qrc -o .rcc\debug\qrc_mimetypes.cpp
    NMAKE : fatal error U1077: 'C:\Qt\qt5\qtbase\bin\rcc.exe' : codice restituito '0xff'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\nmake.EXE"' : codice restituito '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : codice restituito '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : codice restituito '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : codice restituito '0x2'
    Stop.
    @

    So I have tried to run my rcc manually, but it crashes. If there is some error in the qrc file (eg missing file) it outputs correctly the error, but if it's all ok in the qrc file, it crashes.

    I've also tried to build the Qt 5 version taken from the zip that I found in the downoad page, but I get the same result.

    I don't know what's wrong with my rcc.exe. Maybe I need Windows SDK 7.1 instead of 7.0? The guide speaks only of a generic version 7 for VS2008.

    Alternatively, it's possible skip the rcc building and use another rcc.exe taken from another build?

    Thanks!



  • Configure result

    @
    Running configuration tests...
    Environment:
    INCLUDE=
    C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ATLMFC\INCLUDE
    C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\INCLUDE
    J:\Program Files\Microsoft SDKs\Windows\v7.0\include

    LIB=
      C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\ATLMFC\LIB
      C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\LIB
      J:\Program Files\Microsoft SDKs\Windows\v7.0\lib
    
    PATH=
      C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE
      C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN
      C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools
      C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools\bin
      C:\Windows\Microsoft.NET\Framework\
      C:\Windows\Microsoft.NET\Framework\\Microsoft .NET Framework 3.5 (Pre-Release Version)
      C:\Windows\Microsoft.NET\Framework\v2.0.50727
      C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\VCPackages
      J:\Program Files\Microsoft SDKs\Windows\v7.0\bin
      j:\Ruby193\bin
      J:\Perl\site\bin
      J:\Perl\bin
      C:\Windows\system32
      C:\Windows
      C:\Windows\System32\Wbem
      C:\Windows\System32\WindowsPowerShell\v1.0\
      J:\Python27
    

    Configuration:
    warnings_are_errors
    pcre
    debug
    compile_examples
    Qt Configuration:
    private_tests
    minimal-config
    small-config
    medium-config
    large-config
    full-config
    debug_and_release build_all release
    debug
    shared
    system-zlib
    angle
    png
    freetype
    build_all
    accessibility
    opengl
    opengles2
    egl
    audio-backend
    wmf-backend
    native-gestures
    qpa
    concurrent

    QMAKESPEC...................win32-msvc2008 (commandline)
    Architecture................i386, features:
    Host Architecture...........i386, features:
    Maketool....................nmake
    Debug build.................yes (combined)
    Default build...............debug
    Force debug info............no
    C++11 support...............auto
    Link Time Code Generation...no
    Accessibility support.......yes
    RTTI support................yes
    SSE2 support................yes
    SSE3 support................yes
    SSSE3 support...............yes
    SSE4.1 support..............yes
    SSE4.2 support..............yes
    AVX support.................no
    AVX2 support................no
    NEON support................no
    IWMMXT support..............no
    OpenGL support..............yes
    Large File support..........yes
    NIS support.................no
    Iconv support...............no
    Inotify support.............no
    eventfd(7) support..........no
    Glib support................no
    CUPS support................no
    OpenVG support..............no
    OpenSSL support.............no
    Qt D-Bus support............no
    Qt Widgets module support...yes
    Qt GUI module support.......yes
    QML debugging...............yes
    DirectWrite support.........no
    Use system proxies..........no

    Third Party Libraries:
    ZLIB support............system
    GIF support.............plugin
    JPEG support............plugin
    PNG support.............yes
    FreeType support........yes
    Fontconfig support......no
    HarfBuzz-NG support.....no
    PCRE support............qt
    ICU support.............no
    ANGLE...................yes

    Styles:
    Windows.................yes
    Windows XP..............yes
    Windows Vista...........yes
    Fusion..................yes
    Windows CE..............no
    Windows Mobile..........no

    Sql Drivers:
    ODBC....................no
    MySQL...................no
    OCI.....................no
    PostgreSQL..............no
    TDS.....................no
    DB2.....................no
    SQLite..................plugin (qt)
    SQLite2.................no
    InterBase...............no

    Sources are in..............c:\Qt\qt5\qtbase
    Build is done in............C:\Qt\qt5\qtbase
    Install prefix..............C:\Qt\qt5\qtbase
    Headers installed to........C:\Qt\qt5\qtbase\include
    Libraries installed to......C:\Qt\qt5\qtbase\lib
    Arch-dep. data to...........C:\Qt\qt5\qtbase
    Plugins installed to........C:\Qt\qt5\qtbase\plugins
    Library execs installed to..C:\Qt\qt5\qtbase\bin
    QML1 imports installed to...C:\Qt\qt5\qtbase\imports
    QML2 imports installed to...C:\Qt\qt5\qtbase\qml
    Binaries installed to.......C:\Qt\qt5\qtbase\bin
    Arch-indep. data to.........C:\Qt\qt5\qtbase
    Docs installed to...........C:\Qt\qt5\qtbase\doc
    Translations installed to...C:\Qt\qt5\qtbase\translations
    Examples installed to.......C:\Qt\qt5\qtbase\examples
    Tests installed to..........C:\Qt\qt5\qtbase\tests
    Using internal configuration.

    Generating Makefiles...

    Qt is now configured for building. Just run nmake.
    To reconfigure, run nmake confclean and configure.
    @



  • Adding some debug lines in the rcc.cpp code I've found that the problem is the function "qCompress()".
    So I added the -qt-zlib option to the configure tool, and now seems to work!

    So my question now is why the system zlib cause this problem? Maybe really I need the Windows SDK 7.1 instead of 7.0?

    Now I'm going to build all and I hope that it works!


  • Lifetime Qt Champion

    Hi,

    Which version of Qt 5 are you trying to build exactly ? You can also try to ask on the interest mailing list, you'll find Qt's developers/maintainers there (this forum is more user oriented)


  • Moderators

    Hi,

    You only need EITHER Visual Studio OR Windows SDK. You don't need both.

    If I'm not mistaken, you can only use the system Zlib if you compiled it using the same compiler (MSVC 2008 in your case).



  • [quote author="SGaist" date="1389215381"]Hi,

    Which version of Qt 5 are you trying to build exactly ? You can also try to ask on the interest mailing list, you'll find Qt's developers/maintainers there (this forum is more user oriented)[/quote]

    The 5.2.0, and also the version taken from git that seems to be the 5.2.1.

    Howerer now the buildig process is running, it seems to work... Probably the system zlib was incompatible



  • Unfortunately I think there is something wrong building Qt 5 with VS2008. I have switched back to SDK 6.0A because with SDK 7.0 I have an error of duplicate declaration of SHARD_APPIDINFOLINK.

    But now I get this error:

    @
    qwinjumplistcategory.cpp
    .\qwinjumplistcategory.cpp(134) : error C2065: 'SHARD_APPIDINFOLINK': identificatore non dichiarato
    qwinthumbnailtoolbar.cpp
    .\qwinthumbnailtoolbar.cpp(257) : error C2664: 'ITaskbarList3::ThumbBarAddButtons': impossibile convertire il parametro 3 da 'THUMBBUTTON [7]' a 'THUMBBUTTON'
    Nessun costruttore ha potuto accettare il tipo di origine o la risoluzione dell'overload del costruttore è risultata ambigua
    .\qwinthumbnailtoolbar.cpp(322) : error C2065: 'THBN_CLICKED': identificatore non dichiarato
    .\qwinthumbnailtoolbar.cpp(347) : error C2676: '|=' binario: 'THUMBBUTTONFLAGS' non definisce questo operatore né una conversione in un tipo che può essere accettato dall'operatore predefinito
    .\qwinthumbnailtoolbar.cpp(349) : error C2676: '|=' binario: 'THUMBBUTTONFLAGS' non definisce questo operatore né una conversione in un tipo che può essere accettato dall'operatore predefinito
    .\qwinthumbnailtoolbar.cpp(351) : error C2676: '|=' binario: 'THUMBBUTTONFLAGS' non definisce questo operatore né una conversione in un tipo che può essere accettato dall'operatore predefinito
    .\qwinthumbnailtoolbar.cpp(353) : error C2676: '|=' binario: 'THUMBBUTTONFLAGS' non definisce questo operatore né una conversione in un tipo che può essere accettato dall'operatore predefinito
    .\qwinthumbnailtoolbar.cpp(355) : error C2676: '|=' binario: 'THUMBBUTTONFLAGS' non definisce questo operatore né una conversione in un tipo che può essere accettato dall'operatore predefinito
    .\qwinthumbnailtoolbar.cpp(357) : error C2676: '|=' binario: 'THUMBBUTTONFLAGS' non definisce questo operatore né una conversione in un tipo che può essere accettato dall'operatore predefinito
    .\qwinthumbnailtoolbar.cpp(364) : error C2676: '|=' binario: 'THUMBBUTTONMASK' non definisce questo operatore né una conversione in un tipo che può essere accettato dall'operatore predefinito
    .\qwinthumbnailtoolbar.cpp(366) : error C2676: '|=' binario: 'THUMBBUTTONMASK' non definisce questo operatore né una conversione in un tipo che può essere accettato dall'operatore predefinito
    .\qwinthumbnailtoolbar.cpp(368) : error C2676: '|=' binario: 'THUMBBUTTONMASK' non definisce questo operatore né una conversione in un tipo che può essere accettato dall'operatore predefinito
    Generazione del codice in corso...
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0
    VC\BIN\cl.EXE"' : codice restituito '0x2'
    Stop.
    NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 9.0
    VC\BIN\nmake.EXE"' : codice restituito '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : codice restituito '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : codice restituito '0x2'
    Stop.
    NMAKE : fatal error U1077: 'cd' : codice restituito '0x2'
    Stop.
    @

    The first error is about the not declared identifier SHARD_APPIDINFOLINK, that is a Windows enumeration. I've found that in the Qt file winshobjidl.h is declared the struct shobjidl.h "SHARDAPPIDINFOLINK":http://msdn.microsoft.com/en-us/library/windows/desktop/dd391558.aspx, so I added the declaration also of "SHARD_APPIDINFOLINK":http://msdn.microsoft.com/en-us/library/windows/desktop/dd378453.aspx and this error seems to be fixed.

    Hovewer I don't know how to fix the other errors, about THUMBBUTTON and THUMBBUTTONFLAGS. Reading the "msdn documentation ":http://msdn.microsoft.com/en-us/library/windows/desktop/dd391559.aspx seems that the structure and methods used here are supported only by Windows 7: "(Minimum supported client Windows 7 [desktop apps only])".

    What I think is that using SDK 7.0 I will have all this Windows structures available, but there is a problem of duplicate declarations because in the qt files, using VS2008, are declared a second time (eg SHARD_APPIDINFOLINK in winshobjidl.h and maybe others)


  • Moderators

    As per the thread in the Development mailing list, this is a bug which is now being worked on: https://bugreports.qt-project.org/browse/QTBUG-35980



  • Thank you for reply.

    I have removed the SHARDAPPIDINFOLINK declaration in winshobjidl.h and I am able to build successfully with SDK 7.0.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.