Community
cancel
Showing results for 
Search instead for 
Did you mean: 
TimP
Black Belt
87 Views

VS2015 upgrade trouble

I replaced my VS2015 installation by a current one and am trying to figure out how to get things working again.

Attempting to make a .obj in the ICL cmd environment by either ICL or CL gives:

Intel(R) C++ Intel(R) 64 Compiler for applications running on Intel(R) 64, Versi
on 16.0.0.110 Build 20150815
Copyright (C) 1985-2015 Intel Corporation.  All rights reserved.

loopstl.cpp
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\limits(1114): err
or: identifier "FLT_TRUE_MIN" is undefined
                return (_FLT_TRUE_MIN);
                        ^

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\limits(1177): err
or: identifier "DBL_TRUE_MIN" is undefined
                return (_DBL_TRUE_MIN);
                        ^

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\limits(1240): err
or: identifier "LDBL_TRUE_MIN" is undefined
                return (_LDBL_TRUE_MIN);
                        ^

It looks like a disconnect in nested includes in Visual Studio, but no message about


Then, if the objects are built under VS2012, attempting to link under VS2015 gives

LINK : fatal error LNK1104: cannot open file 'kernel32.lib'

Although everything still works under VS2012.

I haven't been able to guess a repair procedure; is Modify preferred? 

0 Kudos
12 Replies
Melanie_B_Intel
Employee
87 Views

Tim, Will you kindly open a ticket on Intel Premier Support?  Thanks. --Melanie

JenniferJ
Moderator
87 Views

Hi Tim,

make sure to pass those /D options (you can find them from the project property dlg). it seems you might have missed one.

Jennifer

TimP
Black Belt
87 Views

Ips submitted. If there is documentation about this vs2015 option requiring new -D settings please show where to look. Meanwhile I dropped back to vs2013. The problem is exposed by include of stl headers.
Kittur_G_Intel
Employee
87 Views

Hi Tim, 
Can you let me know what the issue number in IPS is so I can ensure it's followed up towards resolution by the engineer looking into it?
Thanks,
Kittur

TimP
Black Belt
87 Views

Shenghong responded to my IPS 6000136575.  His cut down C++ test case shows that the failure is due to INCLUDE putting an older Microsoft version of float.h ahead of the updated one.  It doesn't why working around this problem still doesn't allow for linking kernel32.lib.

Kittur_G_Intel
Employee
87 Views

Thanks Tim, yes I find Shenghong is on top of this issue in IPS that you've filed, thx.

_Kittur

TimP
Black Belt
87 Views

We confirmed that the include problem is caused by Microsoft moving float.h to a folder which comes later in include path, without removing the one provided by an earlier vs2015.  It's insufficient to remove vs2015 using add/remove menu.  Maybe removing the entire installed folders will help. This looks contrary to Microsoft upgrade instructions.

Kittur_G_Intel
Employee
87 Views

Thanks Tim, I've updated your feedback in the issue in IPS that Shenghong is working with you so an issue can be filed accordingly, thanks.

_Kittur 

87 Views

@Kittur,

Let me clarify the issue. I have same VS2015 version with Tim, and the float.h is NOT in VC\INCLUDE directory in this version, it is only in c:\Program Files (x86)\Windows Kits\10\Include\10.0.10150.0\ucrt (also discussd in this thread: https://software.intel.com/en-us/forums/intel-c-compiler/topic/596318). But Tim mentioned that he has float.h in BOTH folders and VC\INCLUDE folder is before ucrt folder, thus causing the issue (and the issue affects MS compiler itself, it is not an issue of Intel compiler). The float.h in VC\INCLUDE may be from old VS2015 version, and when upgrading, it is not uninstalled completely.

Summary: the issue seems like an VS2015 upgrading issue and kind of bug of the upgrade installer. We cannot fix from Intel compiler side, as ANY compiler will be affected (by having a wrong float.h in the system...)! :)

The fix is to uninstall old VS2015 and maybe need to manually delete the Visual Studio 14.0 folder completely before install new VS2015.

Thanks,

Shenghong

Kittur_G_Intel
Employee
87 Views

@Tim:  What Shenghong says makes sense and I think his suggestion to manually delete the VS folder completely before installing the newer 2015 version should work.... (thanks Shenghong for the clarification)

_Kittur

TimP
Black Belt
87 Views

Yes, I intend to remove and then delete the vs2015 (and Windows kits\10?) folders to reinstall when I return to internet territory.

 

 

 

 

 

 

 

Kittur_G_Intel
Employee
87 Views

Thanks Tim, let us know if it resolves the issue, thx

_Kittur

Reply