Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.
7956 Discussions

Visual Studio 16.9.0 Compatibility Warning

Mentzer__Stuart
1,944 Views

After updating a machine to 16.9.0 today my C++ application now fails to build with the oneAPI classic (icl) C++ compiler. I am getting unresolved external symbol for __floor and __floorf even after a clean build from scratch.

I have no more information at this time but I wanted to warn other users to avoid the 16.9.0 update and to let Intel know they need a patch release to fix this.

0 Kudos
8 Replies
PrasanthD_intel
Moderator
1,928 Views

Hi Stuart,


Thanks for the information.

OneAPI compatibility is generally supported when the corresponding Visual studio version is released prior to that version of OneAPI toolkit.

So Visual Studio 16.9.0 is currently not tested/supported and for the list of compatible VS versions please refer to this article Intel® Compilers compatibility with Microsoft Visual Studio* and... in the future before updating.


Regards

Prasanth


0 Kudos
Mentzer__Stuart
1,887 Views

Thanks, Prasanth. I am aware of that page but it is not kept up to date so that makes it nearly useless for making decisions about new VS releases. (It currently lists the latest supported VS version as 16.8.0 Preview, which is from Oct 2020.)

Lacking current information from Intel I guess that it is safe to stay in the same major.minor version family (in this case I didn't notice that this was a minor version bump).

I found a method for installing old VS Community releases so that machine is back on 16.8.6.

Having up-to-date compatibility information and patches released in sync with VS would improve the developer experience considerably!

Stuart

AndrewC
New Contributor III
1,865 Views

Note that all Visual Studio 2019 releases can be downloaded from

https://docs.microsoft.com/en-us/visualstudio/releases/2019/history

We are using 16.7.12 to "stay compatible".

I would lay these problems at Microsoft's doorstep. They finally realized the chaos they are causing and have marked the 16.7 branch as LTS.

0 Kudos
PrasanthD_intel
Moderator
1,815 Views

Hi Stuart,


Thanks for the feedback. I will pass it to the internal team for up-to-date information on Visual Studio Compatibility with OneAPI.

If you don't any other issues, Can we close this thread for now?

Let us know.


Regards

Prasanth


0 Kudos
Mentzer__Stuart
1,803 Views

Hi Prasanth,

Yes, it is fine with me to close the thread.

Thanks,
Stuart

0 Kudos
PrasanthD_intel
Moderator
1,770 Views

Hi Stuart,

Thanks for the confirmation.

We are closing this thread. If you require additional assistance from Intel, please start a new thread. Any further interaction in this thread will be considered community only


Regards

Prasanth


0 Kudos
Varsha_M_Intel
Employee
1,382 Views

I know this issue has been closed but do you have a test case which you can share with us to reproduce this issue. 

0 Kudos
Mentzer__Stuart
1,373 Views

I posted a small demo (floor_bug.cpp) in the separate thread about the floor functions:

https://community.intel.com/t5/Intel-C-Compiler/error-LNK2019-unresolved-external-symbol-floorf-referenced-in/m-p/1275185#M38657

 

Note that a number of posts have shown that the current VS 2019 16.9 cmath header is not working with the oneAPI 2021.2 release despite Intel staff statements that it does. I realize that MS broke compatibility between the 16.9 preview and now but this really requires a oneAPI patch release given that the Intel compilers don't include a compatible version of the library and the lack of up-to-date compatibility information provided by Intel.

0 Kudos
Reply