Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

how to link abaqus with intelfortran

abdelhak_a_
Beginner
2,646 Views

Dear sir,

I have installed ABAQUS CAE2016, Microsoft Visual Studio 2015, and Intel Visual Fortran Studio XE 2016 on my computer. However, when I run the test codes, there are the following errors:
Création de la bibliothèque standardU.lib et de l'objet standardU.exp
libirc.lib(fastmemset.obj) : error LNK2019: symbole externe non résolu memset référencé dans la fonction _intel_fast_memset.A
libirc.lib(fastmemcpy.obj) : error LNK2019: symbole externe non résolu memcpy référencé dans la fonction _intel_fast_memcpy.A
standardU_static.lib(SMAStsStdU_IF.obj) : error LNK2019: symbole externe non résolu __imp_printf référencé dans la fonction "void __cdecl SMABasOmniSetSSELevel(void)" (?SMABasOmniSetSSELevel@@YAXXZ)
standardU_static.lib(uanisohyper_inv.obj) : error LNK2001: symbole externe non résolu memmove
standardU_static.lib(uanisohyper_strain.obj) : error LNK2001: symbole externe non résolu memmove
standardU_static.lib(ufluidconnectorloss.obj) : error LNK2001: symbole externe non résolu memmove
standardU_static.lib(ufluidconnectorvalve.obj) : error LNK2001: symbole externe non résolu memmove
standardU.dll : fatal error LNK1120: 6 externes non résolus
Abaqus Error: Problem during linking - Abaqus/Standard User Subroutines.
This error may be due to a mismatch in the Abaqus user subroutine arguments.
These arguments sometimes change from release to release, so user subroutines
used with a previous release of Abaqus may need to be adjusted.
Abaqus/Analysis exited with errors

If you are familiar with ABAQUS subroutines and know where the problem probably lies in, could you please help me with it? Your help is greatly appreciated! 
Best regards,

0 Kudos
12 Replies
TimP
Honored Contributor III
2,646 Views

Did you install one of the qualifying combinations of vs2015 (selecting c++ support option) and ifort version? 

Your link installation appears to find the ifort libraries but not the vs2015 ones.  I haven't seen such a problem without an indication of the vs library paths searched.  Microsoft changed those several times in vs2015 updates.  If you keep vs2015 up to date, you will not be able to use original minor releases of ifort.  Your abaqus may have been built against an earlier vs.  I don't know whether that would present a problem, you would need to consult abaqus support.

 

 

 

 

 

0 Kudos
JohnNichols
Valued Contributor III
2,644 Views

 

Did you install one of the qualifying combinations of vs2015 (selecting c++ support option) and ifort version? 

I just put on VS2015 community edition - to lazy to do the paperwork for the others.  I told it to install everything and then I installed the new Fortran Beta on top.

It works fine , but is this what you mean

John

0 Kudos
TimP
Honored Contributor III
2,646 Views

All of the ifort versions 15u6, 16u3, and 17.0 work for me with VS2015.2.  The 17.0 will not have been tested by Abaqus, although I don't know why it wouldn't work.

I had to remove VS2015 entirely in order to upgrade it to VS2015.1, but the VS2015.2 update worked in place for me.  I still suspect you have something inconsistent in your VS2015.

0 Kudos
Tomas_M_1
Beginner
2,646 Views

Hei,

have you solved this problem? I got it too! I use VS 2015, ifort tried both 16.0 or 17.0 See the log file

Analysis initiated from SIMULIA established products
Abaqus JOB xpl_user_sp
Abaqus 3DEXPERIENCE R2017x
Abaqus License Manager checked out the following licenses:
Abaqus/Explicit checked out 5 tokens from Flexnet server localhost.
<11 out of 16 licenses remain available>.
Begin Compiling Single Precision Abaqus/Explicit User Subroutines
6/23/2017 4:36:26 PM
Intel(R) Visual Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 16.0.4.246 Build 20160811
Copyright (C) 1985-2016 Intel Corporation.  All rights reserved.

End Compiling Single Precision Abaqus/Explicit User Subroutines
Begin Linking Single Precision Abaqus/Explicit User Subroutines
   Creating library explicitU.lib and object explicitU.exp
explicitU_static.lib(SMAUXpU_XP_IF.obj) : error LNK2019: unresolved external symbol __imp_printf referenced in function "void __cdecl SMABasOmniSetSSELevel(void)" (?SMABasOmniSetSSELevel@@YAXXZ)
explicitU_static.lib(SMAUXpU_XP_IF.obj) : error LNK2019: unresolved external symbol __imp_getenv referenced in function "void __cdecl SMABasOmniSetSSELevel(void)" (?SMABasOmniSetSSELevel@@YAXXZ)
explicitU_static.lib(SMAUXpU_XP_IF.obj) : error LNK2019: unresolved external symbol __imp__putenv referenced in function "void __cdecl SMABasOmniSetSSELevel(void)" (?SMABasOmniSetSSELevel@@YAXXZ)
explicitU_static.lib(vwave.obj) : error LNK2019: unresolved external symbol memmove referenced in function vwave
explicitU_static.lib(vusdfld_cza.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vusuperelashardmod.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vutrs.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vuviscosity.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vuinter_cza.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vuinteraction.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vumullins.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vusdfld.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vufield.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vugens.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vuhard.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vuinter.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vucreepnetwork.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vuel.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vueos.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vuexpan.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vuamp.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vuanisohyper_inv.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vuanisohyper_strain.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vucharlength.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vfabric.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vfric.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vfric_coef.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vfriction.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vcosimulation0.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vdflux.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vdisp.obj) : error LNK2001: unresolved external symbol memmove
explicitU_static.lib(vdload.obj) : error LNK2001: unresolved external symbol memmove
explicitU.dll : fatal error LNK1120: 4 unresolved externals
Abaqus Error: Problem during linking - Single Precision Abaqus/Explicit User Subroutines.
  This error may be due to a mismatch in the Abaqus user subroutine arguments.
  These arguments sometimes change from release to release, so user subroutines
  used with a previous release of Abaqus may need to be adjusted.
Begin MFS->SFS and SIM cleanup
6/23/2017 4:36:28 PM
Run SMASimUtility.exe
6/23/2017 4:36:28 PM
End MFS->SFS and SIM cleanup
Abaqus/Analysis exited with errors

 

Thank you for any suggestions! 

0 Kudos
Kirane__Kedar
Beginner
2,646 Views

I have the same error message. Anyone has any ideas on how to fix it? Thank you! Creating library explicitU.lib and object explicitU.exp explicitU_static.lib(SMAUXpU_XP_IF.obj) : error LNK2019: unresolved external symbol __imp_printf referenced in function "void __cdecl SMABasOmniSetSSELevel(void)" (?SMABasOmniSetSSELevel@@YAXXZ) explicitU_static.lib(SMAUXpU_XP_IF.obj) : error LNK2019: unresolved external symbol __imp_getenv referenced in function "void __cdecl SMABasOmniSetSSELevel(void)" (?SMABasOmniSetSSELevel@@YAXXZ) explicitU_static.lib(SMAUXpU_XP_IF.obj) : error LNK2019: unresolved external symbol __imp__putenv referenced in function "void __cdecl SMABasOmniSetSSELevel(void)" (?SMABasOmniSetSSELevel@@YAXXZ) explicitU_static.lib(vwave.obj) : error LNK2019: unresolved external symbol memmove referenced in function vwave explicitU_static.lib(vusdfld_cza.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vusuperelashardmod.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vutrs.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vuviscosity.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vuinter_cza.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vuinteraction.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vumullins.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vusdfld.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vufield.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vugens.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vuhard.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vuinter.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vucreepnetwork.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vuel.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vueos.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vuexpan.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vuamp.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vuanisohyper_inv.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vuanisohyper_strain.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vucharlength.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vfabric.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vfric.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vfric_coef.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vfriction.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vcosimulation0.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vdflux.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vdisp.obj) : error LNK2001: unresolved external symbol memmove explicitU_static.lib(vdload.obj) : error LNK2001: unresolved external symbol memmove explicitU.dll : fatal error LNK1120: 4 unresolved externals Abaqus Error: Problem during linking - Single Precision Abaqus/Explicit User Subroutines. This error may be due to a mismatch in the Abaqus user subroutine arguments. These arguments sometimes change from release to release, so user subroutines used with a previous release of Abaqus may need to be adjusted.

0 Kudos
Singh__Ripudaman
Beginner
2,646 Views

Hi ,
I have been trying to link visual studio 2015 with ABAQUS 2018.
I have installed ABAQUS 2018, Visual Studio 2015 and parallel studio 2016.
I have tried linking the Visual studio 2015 with ABAQUS by the following method:

1. Creating two new path in environment variables in control panel. 
path A to locate ifort.exe file and B to locate ifortvars.bat file.

A.) C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2016.1.146\windows\bin\intel64

B.) C:\Program Files (x86)\IntelSWTools\compilers_and_libraries_2016.1.146\windows\bin

Then i changed the abq2018 command file in C:\SIMULIA\Commands
and edit it to add the command :
@call ifortvars.bat intel64 vs2015

It still is giving me the error that "VISUAL STUDIO 2015 is not installed in this system" 
I checked and the visual studio is installed and it works. 
Why am i getting the same error?!

 

0 Kudos
mecej4
Honored Contributor III
2,646 Views

Singh, Ripudaman wrote:

Then i changed the abq2018 command file in C:\SIMULIA\Commands
and edit it to add the command :
@call ifortvars.bat intel64 vs2015

It still is giving me the error that "VISUAL STUDIO 2015 is not installed in this system" 

If the call to ifortvars.bat is not positioned before the Abaqus batch command that attempts to check for the presence of Visual Studio and Intel Fortran, the check will fail.

A simpler alternative would have been to (i) open an IFort command window from the Start menu, and then (ii) run the original Abaqus batch file (i.e., the batch file installed as part of Abaqus, not your modified version).

Few of the members of this forum use Abaqus, so you will be better off asking such questions in an Abaqus users forum.

0 Kudos
Singh__Ripudaman
Beginner
2,646 Views

Respected

this is the old abq2018 command file in C:\SIMULIA\Commands:

@echo off
setlocal
set ABA_COMMAND=%~nx0
set ABA_COMMAND_FULL=%~f0
"C:\SIMULIA\CAE\2018\win_b64\code\bin\ABQLauncher.exe" %*
endlocal
 

this command was changed to :

@echo off
setlocal
set ABA_COMMAND=%~nx0
set ABA_COMMAND_FULL=%~f0
@call ifortvars.bat intel64 vs2015
"C:\SIMULIA\CAE\2018\win_b64\code\bin\ABQLauncher.exe" %*
endlocal
 

It still is giving me the error that "VISUAL STUDIO 2015 is not installed in this system" 
I checked and the visual studio 2015 is installed.

0 Kudos
Greg_T_
Valued Contributor I
2,646 Views

Hi Ripudaman,

I have success running Abaqus with user subroutines from the Intel Fortran command window.  As mecej4 suggests, open the Intel Fortran command window from the Start menu to initialize the needed environment variables:

     Start -> Intel Parallel Studio XE ... -> Compiler ... for Intel 64 

(the ... indicate I've left out specific version numbers such as 2018 or 2019, and use the 64-bit command window to match with Abaqus)

This should be easier than the approach you have described.  I have found that I do not need to run the abaqus initialization from the Intel Fortran command window.  I can enter the abaqus command syntax in the Intel Fortran command window to start the abaqus job with a user subroutine.  Have you tried this approach?

To narrow down your problem to abaqus, have you created a separate main program to call your user subroutine to confirm it compiles and runs?  Running a user subroutine outside of abaqus has helped me to confirm it is working as expected.  I then use it with abaqus and if there are problems there they should be related to abaqus at that point.

Do you have access to the Abaqus knowledge base or to a local support office?

Regards,

Greg T.

0 Kudos
Singh__Ripudaman
Beginner
2,646 Views

Respected Sir,

I tried your approach but it won't work because it is still showing the same error on ABAQUS command window and also on INTEL FORTRAN command window.

I am attaching a screenshot of the error.

it says :

Visual Studio  2015 is not installed on this system.

0 Kudos
mecej4
Honored Contributor III
2,646 Views

I suspect that the problem was caused by your bracketing the call to ifortvars.bat by SETLOCAL ... ENDLOCAL. The changes made to PATH, etc., in ifortvars.bat will not persist after the ENDLOCAL command has been run.

0 Kudos
Greg_T_
Valued Contributor I
2,646 Views

Hi Ripudaman,

Your description sounds more like an installation problem to me.  If you can reinstall both Visual Studio and Intel Fortran, that may help.  When installing Visual Studio be sure to install the C++ compiler too.  Install Intel Fortran second so that it will integrate into VS.  I did this just the other day on one of our workstations, and abaqus user subroutines are working as expected.  Hopefully a reinstall will help you too.

If you have access to Abaqus support, that may be the best way to get help to resolve your problem.  The next best source of information may be the on-line SIMULIA Abaqus knowledge base. 

Start here: https://www.3ds.com/support/

Then select the "Knowledge Base" link and user your DS login.

Regards,

Greg T.

0 Kudos
Reply