So I loaded up visual studio 2012 and created a new Fortran console application with the example code. I tried to build it just to check everything was working and I get this in the build:
1>------ Build started: Project: Console1, Configuration: Debug Win32 ------
1>ipo: error #11018: Cannot open C:\Program
1>C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\amd64\link.exe : fatal error LNK1107: invalid or corrupt file: cannot read at 0x2E8
1>Build log written to "file://c:\users\XXXXXX\documents\visual studio 2012\Projects\Console1\Console1\Debug\BuildLog.htm"
1>Console1 - 2 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Can anyone please help? It looks like I have a path somewhere that's not quoted but I don't know where to find it.
Visual Studio 2012
Intel Composer 2013 SP1
I don't understand why IPO is being used in a debug build, and the build log that you provided does not show any information on the compilation phases, since it shows only information about the linking stage. Please try "clean" and "build".
You're building a 32-bit program but invoking the 64-bit linker. That's not right.
In VS, select Tools > Options > Intel Compilers and Tools > Visual Fortran > Compilers. With the Win32 tab active, click Reset... Click on the x64 tab and click Reset... Click OK.
Go back to that Compilers tab. Click on the ... next to "Executables". Copy the text that is displayed and paste it into a reply here.
Next, open a command prompt window (not a Fortran build environment window) - Press Windows-X and select Command Line (or PowerShell if it appears). Set default (cd) to a writeable folder (not under Windows or Program Files) and type:
set path > path.txt
Attach the path.txt to your reply here.
> Go back to that Compilers tab. Click on the ... next to "Executables". Copy the text that is displayed and paste it into a reply here.
I see the following potential problems in your %PATH%:
"C:\Program Files (x86)\Intel\Composer XE 2013 SP1\bin\intel64" appears twice.
"C:\Program Files (x86)\Intel\Composer XE 2013 SP1\bin" appears once; this directory contains only batch files and subdirectories.
"C:\Program Files (x86)\Intel\Composer XE 2013 SP1\bin\ia32" contains tools needed for 32-bit compilations, but is not included in %PATH%.
I have added "C:\Program Files (x86)\Intel\Composer XE 2013 SP1\bin\ia32", and removed "C:\Program Files (x86)\Intel\Composer XE 2013 SP1\bin", however the problem is still occuring.
You did the "set path" from a command prompt that was NOT a "Fortran build environment" prompt, as I requested? You should not have any of the \bin folders in PATH. How did they get there?
Yes I did. I added those folders as I was told it was necessary for the integration of ifort and link with my finite element modelling software ABAQUS which uses fortran for it's user subroutines.
Take them out - they don't belong there. The better choice is to use one of the "Fortran build environment" shortcuts or make your own with a call to ifortvars.bat with appropriate options. What you have done is subverted the way the VS integration selects which executables to use.
Please reboot first. I would also suggest that you set Tools > Options > Intel Compilers and Tools > Visual Fortran > General > Show Environment in Log to True, do a rebuild, ZIP the buildlog.htm and attach the zip to a reply here.
Hi Steve (and mecej4),
Thank you so much for your help, it was indeed just the PATH that was messing things up and I have got everything working, including the ABAQUS integration.