Community
cancel
Showing results for 
Search instead for 
Did you mean: 
sav
Novice
410 Views

Microsoft 'libcpmt.lib' and Intel 'libmmt.lib' locale-related conflicts for static Qt builds using ICC on Windows

Hello everyone,

For Qt builds using ICC on Windows got error:

        cd planets-qml\ && ( <span class="code-keyword">if</span> not exist Makefile c:\libQT-5.11-dev\build\qtbase\bin\qmake.exe -o Makefile c:\libQT-5.11-dev\build\qt3d\examples\qt3d\planets-qml\planets-qml.pro ) && <span class="code-quote">"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\bin\HostX64\x64\nmake.exe"</span> -f Makefile

Microsoft (R) Program Maintenance Utility Version 14.11.25547.0
Copyright (C) Microsoft Corporation.  All rights reserved.

        <span class="code-quote">"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\bin\HostX64\x64\nmake.exe"</span> -f Makefile.Release

Microsoft (R) Program Maintenance Utility Version 14.11.25547.0
Copyright (C) Microsoft Corporation.  All rights reserved.

        echo 1 /* CREATEPROCESS_MANIFEST_RESOURCE_ID */ 24 /* RT_MANIFEST */ <span class="code-quote">"release\\planets-qml.exe.embed.manifest"</span>>release\planets-qml.exe_manifest.rc
        <span class="code-keyword">if</span> not exist release\planets-qml.exe <span class="code-keyword">if</span> exist release\planets-qml.exe.embed.manifest del release\planets-qml.exe.embed.manifest
        <span class="code-keyword">if</span> exist release\planets-qml.exe.embed.manifest copy /Y release\planets-qml.exe.embed.manifest release\planets-qml.exe_manifest.bak
        xilink /NOLOGO /SUBSYSTEM:WINDOWS <span class="code-quote">"/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'"</span> /MANIFEST /MANIFESTFILE:release\planets-qml.exe.embed.manifest /OUT:release\planets-qml.exe @C:\Users\test\AppData\Local\Temp\nm3C50.tmp
libcpmt.lib(locale.obj) : error LNK2005: ldexpf already defined in libmmt.lib(ldexpf_iface_c99.obj)
libcpmt.lib(wlocale.obj) : error LNK2005: ldexpf already defined in libmmt.lib(ldexpf_iface_c99.obj)
   Creating library release\planets-qml.lib and object release\planets-qml.exp
release\planets-qml.exe : fatal error LNK1169: one or more multiply defined symbols found
NMAKE : fatal error U1077: '<span class="code-quote">"C:\Program Files (x86)\IntelSWTools\compilers_and_libraries\windows\bin\intel64\xilink.EXE"</span>' : <span class="code-keyword">return</span> code '0x491'
Stop.
NMAKE : fatal error U1077: '<span class="code-quote">"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.11.25503\bin\HostX64\x64\nmake.exe"</span>' : <span class="code-keyword">return</span> code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : <span class="code-keyword">return</span> code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : <span class="code-keyword">return</span> code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : <span class="code-keyword">return</span> code '0x2'
Stop.
NMAKE : fatal error U1077: 'cd' : <span class="code-keyword">return</span> code '0x2'
Stop.

during planets-qml build, which relate to Microsoft libcpmt.lib and Intel libmmt.lib libraries.

 

Reproduced for:

  • static Qt builds using Windows ICC,

not reproduced for:

  • shared Qt builds using Windows ICC,
  • static Qt builds using mingw-w64 and MSVC.

It was registered on Qt bugtracker as QTBUG-64898, and Qt Developers believe it not Qt bug. And since error not reproduce for MSVC, it presumably is ICC bug.

 

Best,

Alexander

 

0 Kudos
5 Replies
Jingwei_Z_Intel
Employee
410 Views

Microsoft implements ldexpf in object files that has nothing to do with math library. We have asked Microsoft to remove such cases. Meanwhile, you can try to add "/FORCE:MULTIPLE" to your linker command to resolve the conflict.

sav
Novice
410 Views

Thank you for a tip, Jingwei. Though trying to avoid "/FORCE:MULTIPLE" in build commands and prefer to disable failed builds.

Can you share a link to related ticket on Devcommunity or somewhere else, so it would be possible to track this issue directly?

 

Jingwei_Z_Intel
Employee
410 Views

Based on what I have heard, Microsoft would fix the issue in the next Windows 10 release. I don't have a ticket number for this.

Thanks,

Jingwei

sav
Novice
410 Views

Any news on this? Since for environment:

  • Windows 10 x64 10.0.17134.1,
  • ICC 2018 Update 3,
  • MSVC 2017 15.7.3,
  • Windows SDK 10.0.17134.12,

errors still reproduced.

A missing ticket number would be appreciated. Otherwise, there is not much to talk about with the Developers of MSVC.

 

Best,

Alexander

 

roberto_g_2
New Contributor I
310 Views

Issue still there...  December 2020

Reply