Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Joseph_R_
Beginner
97 Views

Help with icpc and makefile values in win32.mak

Hi

I just intergrated the intel compiler to Visual Studio 2015 works fine with all my projects which are MFC C++ except one which is a C makefile

I think I need to override the value for cc = icpc in win32.mak which I did but then there the default options can anyone help with this

 

Thanks 

 

    

 

0 Kudos
14 Replies
SergeyKostrov
Valued Contributor II
97 Views

>>...I think I need to override the value for cc = icpc in win32.mak which I did but then there the default options... What default options you're talking about?
Judith_W_Intel
Employee
97 Views

 

icl is the name of the compiler on Windows.

icpc is only applicable on Linux (equivalent to g++).

Joseph_R_
Beginner
97 Views

this is my win32.mak I am typing this in as paste doesn't seem to work

cc = icl

this is my output from build

'icl'  is not recognized as internal or external command  

 

TimP
Black Belt
97 Views

Normally, you would open the cmd prompt window for your combination of ICL and VS and start your make command there.

Other possibilities might include copying the ICL start command shortcut into your makefile.

Joseph_R_
Beginner
97 Views

 

 

The cc = value is the value of a exe the exe had to be in path altnerativilly can you type in the entire path enclosed in quoutes e.g. "C:\program files(x86)\intelSWTools\compiler\......icl.exe"

Is that correct

Thanks 

TimP
Black Belt
97 Views

Normally, you want the entire set of PATH settings for ICL, including the Microsoft compiler, include, and linker paths.

SergeyKostrov
Valued Contributor II
97 Views

>>...'icl' is not recognized as internal or external command... Please provide technical details about all the rest, like Intel C++ compiler version, upload win32.mak file, and how you use that win32.mak file, in an IDE, or using nmake, etc.
Joseph_R_
Beginner
97 Views

I'll provide my entire path when I get home as anside is there a way to cut and paste an response here I right clicked and it doesn't seem to work also I would of thought the install of the compiler would of update the paths that would be needed to compile and link I guess things are simple for a Visual Studio build by nothing is simple for a makefile build 

Melanie_B_Intel
Employee
97 Views

It's possible that you need to convert your visual studio makefile project into an intel compiler project. If you do that then visual studio may put ICL into visibility before launching the makefile.  I normally use the command line, I believe you can access the conversion by right click on the project name.

--Melanie

Joseph_R_
Beginner
97 Views

Melaine

thanks that did work with my other MFC C++ projects right clicking gave me the option of compiling with intel this however is nmake project

which makes it a nightmare I did a search on size_t but as you would imagine got a million references I know if I put some preprocessor option it will get rid of the error just trying to find the original definition of size_t   

TimP
Black Belt
97 Views

ICL should take the definition of size_t from the Visual Studio include files.  If your program makes non-portable assumptions about size_t, it will break if you change from 32- to 64-bit mode.

SergeyKostrov
Valued Contributor II
97 Views

>>... >>which makes it a nightmare I did a search on size_t but as you would imagine got a million references I know if I put some >>preprocessor option it will get rid of the error just trying to find the original definition of size_t... In case of Visual Studios or MinGW C++ compiler for Windows you need to look at crtdefs.h header file to see how size_t is declared.
Joseph_R_
Beginner
97 Views

I was pointing to the 32 bit version of icl in addition I needed to include some libs in the libpath I was able to get build but with warnings

 

thanks   

SergeyKostrov
Valued Contributor II
97 Views

Note: size_t is a fundamental data type and take a look at https://software.intel.com/en-us/forums/watercooler-catchall/topic/699444 thread ( Evolution of declarations for 'size_t' data type in some C++ compilers ) for more technical details.
Reply