R2013a + Intel Composer XE 2013 + MSVC 2012 or MSVC 2010. Have you tried them yet?

2 views (last 30 days)
James Tursa
James Tursa on 13 Mar 2013
Commented: ANDREY on 6 Nov 2013
Our IT folks have informed us we need to migrate from our 32-bit WinXP systems to Windows 7 systems. Great. They just set up a test computer with:
R2013a (both 32-bit and 64-bit installed) +
Intel Fortran Composer XE 2013 (trial) +
MSVC 2012 (trial) +
MSVC 2010 (trial) +
I am supposed to test these to make sure they work together before they purchase the Fortran Composer & MSVC. Basically we need to get a MATLAB + Fortran + C/C++ suite working together before they are willing to convert all of our machines to Windows 7.
Well, I fired up both the 32-bit and 64-bit R2013a. Neither sees the Fortran Composer with mex -setup. They both see the MSVC 2012 and MSVC 2010 but I get link errors when I try to compile C code with them.
Has anyone out there tried these combinations yet? Anything special I need to look out for as far as installation? (The IT folks installed everything, not me).
The Intel Fortran Composer 2013 seems to start up just fine as a studio app (brings up the Visual Studio development environment and I can compile Fortran code to 32-bit or 64-bit targets). The MSVC 2010 and 2012 also start up in the developer studio environment and I can compile C code with them. MATLAB gets through mex -setup with either MSVC 2010 or MSVC 2012 and seems to compile code via the mex command with either, but always fails to link.
Bottom line is, out of the box installation of R2013a and the mex setup files do not work for me for a supposedly supported combination and I was wondering if anyone had experience using these combinations yet. I would like to at least get a 32-bit suite working soon (before the trials expire).

Answers (2)

Konrad Malkowski
Konrad Malkowski on 13 Mar 2013
Hi James,
Please take a look at the following page:
It appears that you need either Microsoft Windows SDK 7.1 or Microsoft Visual Studio 2010/2012 Professional.
James Tursa
James Tursa on 13 Mar 2013
Have you actually compiled anything yet? Or did you just do mex -setup? The mex -setup seems to work for me, it is just that when I try to mex some code it fails at the link step.
I wouldn't have thought SDK would be an issue since MSVC comes with and installs the appropriate SDK for the compiler, but I will look into it. Maybe the mexopts files are pointing to the wrong linker ...

Sign in to comment.

ANDREY on 2 Nov 2013
I just installed Intel Fortran 14.0 (XE2013 SP1) into VS2012 SP1 and set up Matlab 2013b (mex -setup). Naturally to make mex -setup work I had to make special versions of the stp, bat and xml files in changing 13 to 14 everywhere in these text files (Mathworks seems to be ignorant that Intel XE2013 SP1 has both compilers with 14th version). I send you this banal info becasue you asked about new vesions of these products and how they work together. These three work fine. More importantly I compiled your great Fortran 90 API also making obvious changes. For default options it was easy but for -largeArrayDims it took 2 hours! Please mention in your pdf manual that one MUST add /integer_size:64 to the end of set COMPFLAGS= in mexopt.bat (User/.../) if and only if one wants to compile your API with -largeArrayDims. Without this flag one gets a rahter cryptic error MatlabAPImx.f(3436): error #6415: This name cannot be assigned this data type because it conflicts with prior uses of the name. [N] integer*8, intent(in) :: n
ANDREY on 6 Nov 2013
Ok, "unaware" of the number, I did not mean anything offensive just a bit non proficient in your language. This was not a problem for me but for a newbie it might be a bit confusing to find and manually edit the files, a little nuisance but persistent for many versions of Matlab like the absence of Find/Replace in Files for years.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by