Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-47884

Failure to build Qt 5.5.0 using Intel C++ Compiler 2015 in Intel64 mode

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • None
    • 5.5.0
    • Tools: Designer
    • Intel C++ Compiler 2015 Update4 integrated with VS 2013 Update 5 on Windows 8.1 x64
    • 2806d1c00a72f093714ba9187ee1a0e463058ec2

    Description

      I am a customer and user of IntelĀ® Parallel Studio XE Professional Edition for C++ Windows. I have used Qt 4.6.2 and the Intel C++ Compiler for years, integrated with VS 2008 on Windows XP/Vista/7/8.1, but now it's time for me to migrate to VS 2013 since Intel is not supporting VS 2008 anymore. I have been trying to compile Qt 5.5.0 in Intel64 mode and have run into many difficulties.

      I eventually got Qt 5.5.0 to compile with the Intel C++ Compiler in Update4 of the Composer package, integrated with VS 2013 Update5. To do this, I had to carefully exclude a number of modules at the configuration stage, and ended up configuring as follows:

      configure.bat
           -platform win32-icc
           -opensource
           -confirm-license
           -debug-and-release
           -opengl desktop
           -no-angle
           -no-icu
           -c++11
           -skip qtwebengine
           -skip qtwebchannel
           -skip qtwayland
           -skip qtwebkit
           -skip qtwebkit-examples
           -skip qtdeclarative
           -nomake tests
           -nomake examples
      

      I also had to make a couple of changes to the file qcompilerdetection.h. I started with a version that resulted from a previous bug fix,

      https://codereview.qt-project.org/#/c/121595/

      and made a few more changes to account for the fact that apparently neither MSVC++ 2013 nor ICL support C++11 constexpr. I've attached the original and my modified version for comparison.

      The build finally completed without errors, but every .exe that is created (e.g. designer.exe, assistant.exe, linguist.exe) crashes immediately on startup. This leaves the following entry in the Windows event log:

      Faulting application name: designer.exe, version: 1.0.0.0, time stamp: 0x55d4a1df
      Faulting module name: Qt5Gui.dll, version: 5.5.0.0, time stamp: 0x55d48d34
      Exception code: 0xc0000005
      Fault offset: 0x00000000006850f5
      Faulting process id: 0x5b8
      Faulting application start time: 0x01d0daadb7408ac1
      Faulting application path: C:\Qt\5.5.0\qtbase\bin\designer.exe
      Faulting module path: C:\Qt\5.5.0\qtbase\bin\Qt5Gui.dll
      Report Id: f504ee37-46a0-11e5-8267-8cdcd42c37a6
      Faulting package full name:                                             
      Faulting package-relative application ID:
      

      And when run using Dependency Walker x64, the following lines from the log are written in red:

      GetProcAddress(0x00007FFA7C1B0000 [KERNEL32.DLL], "GetFileInformationByHandleExW") called from "MSVCR120.DLL" at address 0x00007FFA6190E838 and returned NULL. Error: The specified procedure could not be found (127).
      
      GetProcAddress(0x00007FFA7C1B0000 [KERNEL32.DLL], "SetFileInformationByHandleW") called from "MSVCR120.DLL" at address 0x00007FFA6190E856 and returned NULL. Error: The specified procedure could not be found (127).
      
      LoadLibraryW("C:\windows\system32\wintab32.dll") returned NULL. Error: The specified module could not be found (126).
      
      Second chance exception 0xC0000005 (Access Violation) occurred in "QT5GUI.DLL" at address 0x00007FFA598A50F5.
      

      There is also a warning that shows up in the make log about a million times:

      warning #31001: The dll for reading and writing the pdb (for example, mspdb110.dll) could  not be found on your path. This is usually a 
      configuration error. Compilation will continue using /Z7 instead of /Zi, but expect a similar error when you link your program.
      

      but I doubt this is related to the main problem.

      Attachments

        1. qcompilerdetection_original.h
          44 kB
        2. qcompilerdetection_modified.h
          43 kB
        3. make.log
          325 kB
        4. conf.log
          54 kB
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            thiago Thiago Macieira
            PaulD Paul Dufort
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes