I using Abaqus 6.12 with Visual Studio 2008 and Fortran Compiler 11.1 intel64 ( I have checked the lib files has the intel 64)
I have manage to link Abaqus with the Compiler and the VS with intel64 as an argument to the compiler.
The subroutie compiles but I am getting the error message below:
kernel32.lib(KERNEL32.dll) : fatal error LNK1112: module machine type 'IA64' conflicts with target machine type 'x64'
Can you please help.
Apparently, you have used the Itanium (IA64) compiler to make object files, where you need the Intel64 (x64,amd64) compiler.
This confusion caused by Intel marketing over a decade ago might have been thought to have passed. 11.1 was the last Intel compiler release to offer IA64 compiler in addition to IA32 and Intel64.
Thank you very much for your reply
The issue that in the installation path at the lib folder the there are two folders the one refering to the ia32 and the one to intel64 no IA64 folder exists.
Also in the arguments I put for running the compiler with Abaqus I put intel64 if I put IA64 the compiler does not run.
I think the issue is that you're linking to the Itanium version of the Windows SDK. In the Abaqus build environment, what is the value of the LIB environment variable?
Thank you very much for the reply
Most probably I found the problem. In the SDK 5.0 the lib folder contains the IA64 only libraries so most I think that must be the problem.
I will check to install a another version of VS2008 and see that will happen
my name is David Szirocak, I'm one of the senior analysts at Intrinsys ltd UK (http://www.intrinsys.com/) and we offer official Simulia certified support for Abaqus, and get this question about the subroutines quite a few times.
The main points of making sure you can work with your subroutines are:
Each version of Abaqus was set up to use a specific version of Visual Studio and Intel Fortran compiler. It might work with different versions, but it's not guaranteed, so its best to stick with the correct one. You can check compatibilities on the 3ds website, Abaqus 6.12 needs the following:
Microsoft Visual C++ 2008 SP1 or 2010
Intel Visual Fortran 10.1 or 11.1
Do not download the "Express" visual studio that doesn't work. Community, Professional or Enterprise should be all OK. If you are looking into trialling, you can find older versions here for example: http://stackoverflow.com/questions/8894654/where-can-i-download-visual-studio-2010-trial-version
So first install Visual studio, then your Intel Fortran compiler.
If you are done with all these, you will need to setup Abaqus to load the correct environment variables for it to run. You can do this for example by modifying the shortcut to the command window as:
C:\Windows\SysWOW64\cmd.exe /k ""C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2016.1.146\windows\bin\ifortvars.bat" intel64 vs2010 && "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x64"
or you can change the .CAE executible as:
"C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2016.1.146\windows\bin\ifortvars.bat" intel64 vs2010 && "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x64 && C:\SIMULIA\Abaqus\Commands\abq6142.bat cae || pause
Obviously you need to change the path based on the version of VS and Fortran compiler you are using.
Finally, what you have to make sure is that your installed MS-MPI version is appropriate for the version of Abaqus you are running. This can be an issue if you have multiple versions of Abaqus installed or if you have other software installed and updated the MS-MPI installation. You will be able to identify if this is the case, as you will get an error message during linking.
If you follow these steps, you should be able to successfully compile and link your subroutines and run your analysis. Let us know if you get stuck with something.
I see the "how do you get an old version" to use Aqabus question all the time. VS2008 and VS2010 are obsolete you can't buy them. Intel Fortran 11 you can get but really Mr Abaqus that is really ancient, you need to try harder on customer support!