Can't use Intel Compiler 12.0 with Visual C++ 2012

Can't use Intel Compiler 12.0 with Visual C++ 2012

I'm using Visual Studio 2012 and Intel Composer 2011.

I have a very simple HelloWorld program. When I tried to compile this program using icl

& 'C:/Program Files (x86)/Intel/ComposerXE-2011/bin/intel64/icl.exe' HelloWorld.cpp

I got the following long list of errors.

C:/Program Files (x86)/Microsoft Visual Studio 11.0/VC/INCLUDE/xtr1common(414): error: "auto" type cannot appear in top-level function type
 _HAS_ONE_TYPE(result_type);
 ^
C:/Program Files (x86)/Microsoft Visual Studio 11.0/VC/INCLUDE/xtr1common(414): error: expected a ";"
 _HAS_ONE_TYPE(result_type);
 ^
C:/Program Files (x86)/Microsoft Visual Studio 11.0/VC/INCLUDE/stddef.h(36): error: identifier "__nullptr" is undefined
 namespace std { typedef decltype(__nullptr) nullptr_t; }
...

What am I doing wrong?

11 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

My guess is that I didn't load the variables. However, when I tried to "iclvars.bat intel64", I got the following error.

ERROR: Visual Studio 2005, 2008 or 2010 is not found in the system.

I have Visual Studio 2012.

The 12.0 compiler doesn't support  VS2012, as the 13.0 compiler does.  If you need to operate this way, maybe C mode will work.

>>...My guess is that I didn't load the variables...

Please attach a file with source codes of the test and a complete command line of Intel C++ compiler options you've used.

TimP is right, the Intel C++ Composer XE 12.x does not support VS2012.

Upgrade to Intel C++ Composer XE 2013. You can download the eval of Intel C++ Composer XE 2013 for Windows.

Jennifer

I know that Composer XE 2011 can't integrate with the VS2012 IDE.

Is it also true that the Intel compiler included in Composer XE 2011 is not compatible with the Visual C++ compiler included in VS2012?

Please confirm.

Thanks.

You've just demonstrated how Microsoft changed the C++ include files so as require updates for plug-in compilers.

Duplicate - Deleted. Sorry about this.

>>...Is it also true that the Intel compiler included in Composer XE 2011 is not compatible with the Visual C++ compiler
>>included in VS2012?

No, that is Not true.

Let's say we don't consider C++11 standard. Do you have any test case(s) you can't compile with Intel C++ compiler v12 and can compile with Visual C++ compiler from VS 2012?

Quote:

Sergey Kostrov wrote:

>>...Is it also true that the Intel compiler included in Composer XE 2011 is not compatible with the Visual C++ compiler
>>included in VS2012?

No, that is Not true.

Let's say we don't consider C++11 standard. Do you have any test case(s) you can't compile with Intel C++ compiler v12 and can compile with Visual C++ compiler from VS 2012?

No Sergey. The VS2012's header contains new features that ICL 12.x may not support. you should use ICL 13.x if you have VS2012.

Here is the compatibility options of ICL 13.x:
/Qvc<arg>           enable compatibility with a specific Microsoft* Visual Studio version

  • 9   - Microsoft* Visual Studio 2008 compatibility
  • 10  - Microsoft* Visual Studio 2010 compatibility
  • 11  - Microsoft* Visual Studio 2012 compatibility ------------ this option is not available in ICL 12.x

>>...No Sergey. The VS2012's header contains new features that ICL 12.x may not support...

I wanted to say that in overall they are compatible if some new features are Not used. It means that both C++ compilers will compile C++ codes if they do not have any functionality based on latest features of C++ language, for example, some Platform SDK Win32 examples implemented 5 years ago. zerOnce did not specifiy anything about new headers in VS 2012.

Leave a Comment

Please sign in to add a comment. Not a member? Join today