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

'unresolved external symbol' error for QtSerialBus builds using ICC with precompiled headers on Windows

    XMLWordPrintable

Details

    • Bug
    • Resolution: Out of scope
    • P2: Important
    • None
    • 5.10
    • SerialBus: CAN Bus
    •  * Windows 10 x64,
       * IPSXE 2017 Update 5,
       * MSVC 2017 15.3.3,
       * Windows SDK 10.0.15063.468,
       * mingw-w64 x86_64 7.2.0,
       * Qt-5.10-dev (4ad6292028fde7cba698b9c1f7d7d080772d6cd2).

    Description

      Hello everyone,

      Got errors for builds using ICC on Windows:

              cd serialbus\ && ( if not exist Makefile C:\libQT-5.10-dev\build\qtbase\bin\qmake.exe -o Makefile C:\libQT-5.10-dev\build\qtserialbus\src\serialbus\serialbus.pro ) && "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.11.25503\bin\HostX64\x64\nmake.exe" -f Makefile
      
      Microsoft (R) Program Maintenance Utility Version 14.11.25507.1
      Copyright (C) Microsoft Corporation.  All rights reserved.
      
              "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.11.25503\bin\HostX64\x64\nmake.exe" -f Makefile.Debug
      
      Microsoft (R) Program Maintenance Utility Version 14.11.25507.1
      Copyright (C) Microsoft Corporation.  All rights reserved.
      
              echo 2 /* CREATEPROCESS_MANIFEST_RESOURCE_ID */ 24 /* RT_MANIFEST */ "..\\..\\lib\\Qt5SerialBusd.dll.embed.manifest">..\..\lib\Qt5SerialBusd.dll_manifest.rc
              if not exist ..\..\lib\Qt5SerialBusd.dll if exist ..\..\lib\Qt5SerialBusd.dll.embed.manifest del ..\..\lib\Qt5SerialBusd.dll.embed.manifest
              if exist ..\..\lib\Qt5SerialBusd.dll.embed.manifest copy /Y ..\..\lib\Qt5SerialBusd.dll.embed.manifest ..\..\lib\Qt5SerialBusd.dll_manifest.bak
              xilink /NOLOGO /DEBUG /DLL /SUBSYSTEM:WINDOWS /VERSION:5.10 /MANIFEST /MANIFESTFILE:..\..\lib\Qt5SerialBusd.dll.embed.manifest /OUT:..\..\lib\Qt5SerialBusd.dll @C:\Users\test\AppData\Local\Temp\nmAAB6.tmp
         Creating library ..\..\lib\Qt5SerialBusd.lib and object ..\..\lib\Qt5SerialBusd.exp
      qcanbus.obj : error LNK2019: unresolved external symbol "public: __cdecl QCanBusDeviceInfo::~QCanBusDeviceInfo(void)" (??1QCanBusDeviceInfo@@QEAA@XZ) referenced in function "public: void __cdecl QCanBusDeviceInfo::`vector destructor iterator'(unsigned int)" (??_IQCanBusDeviceInfo@@QEAAXI@Z)
      ..\..\lib\Qt5SerialBusd.dll : fatal error LNK1120: 1 unresolved externals
      NMAKE : fatal error U1077: '"C:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\bin\intel64\xilink.EXE"' : return code '0x460'
      Stop.
      NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.11.25503\bin\HostX64\x64\nmake.exe"' : return code '0x2'
      Stop.
      NMAKE : fatal error U1077: 'cd' : return code '0x2'
      Stop.
      NMAKE : fatal error U1077: 'cd' : return code '0x2'
      Stop.
      NMAKE : fatal error U1077: 'cd' : return code '0x2'
      Stop.

      which relate to Change #188168.

       

      Reproduced for:
        - builds using ICC with -pch flag for Qt configuration,

      not reproduced for:
        - builds using ICC with no-pch flag for Qt configuration OR Change #188168 reverted,
        - builds using mingw-w64 and MSVC with -pch flag for Qt configuration,.

       

      This is the same issue, as QTBUG-62979 and QTCREATORBUG-19303.

       

      Alexander

       

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              ablasche Alex Blasche
              sav sav
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes