I have the following scenario.
System : Windows 7, Visual Studio 2012, Intel Parallel Studio XE 2016 Update 1 Composer Edition.
Project1.sln - Visual Studio 2012 Solution
Main.vcxproj - Visual C++ Project set to build using MS compiler, Main project creates main.EXE using intel.LIB and MS.LIB
Intel.vcxproj - Visual C++ Project set to build using intel C++ compiler, generates intel.LIB
MsVC.vcxproj - Visual C++ Project set to build using MS compiler, generates MS.LIB
Intel.vcxproj and MsVC.vcxproj build without any problem. However when I try to build Main.vcxproj, its keep failing with the following error message.
Error 1 error LNK1104: cannot open file 'libmmdd.lib'
But if I set Main.vcxproj to build using Intel C++, it builds without any problem.
My question here is.. why does Main.vcxproj needs to link to libmmdd.lib? Intel.lib and Ms.lib are static library and I am not sure why I need to include libmmdd.lib. Also, how do I fix this?
Any help would be appreciated.
Mathematical functions such as pow(), log(), etc., in the libmm*.lib library are called from object files produced by the Intel C/Fortran compilers. Static/dynamic release/debug versions (4 in all) of the libraries are available for you to select from.
if your Main.vcxproj links to the library created by intel.vxproj, you do need to link the Intel libs. just add the libmmdd.lib to main project's link input.
Thanks all for the reply. I asked this because I wasn't getting this error when I compile these manually in command line. I am guessing these libraries are already in my system PATH. :)