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

Problem Linking Intel Fortran 16 to Abaqus/CAE 2017

eric1949
Novice
2,244 Views

I'm trying to link Abaqus/CAE 2017 to Intel Fortran 16. Accordingly with Abaqus-Manual, this is the version of Fortran that works, in adition with Visual Studio 2015. I already uninstalled and installed all the softwares, but nothing works.

At the present time, when I run Abaqus Command Intel and VS are called, but when I try to run some subroutine, then nothing works. The message log that I get from Abaqus is:

Creating library standardU.lib and object standardU.exp
standardU_static.lib(SMAStsStdU_IF.obj) : error LNK2019: unresolved external symbol __imp_printf referenced in function "void __cdecl SMABasOmniSetSSELevel(void)" (?SMABasOmniSetSSELevel@@YAXXZ)
standardU_static.lib(SMAStsStdU_IF.obj) : error LNK2019: unresolved external symbol __imp_getenv referenced in function "void __cdecl SMABasOmniSetSSELevel(void)" (?SMABasOmniSetSSELevel@@YAXXZ)
standardU_static.lib(SMAStsStdU_IF.obj) : error LNK2019: unresolved external symbol __imp__putenv referenced in function "void __cdecl SMABasOmniSetSSELevel(void)" (?SMABasOmniSetSSELevel@@YAXXZ)
standardU_static.lib(ufluidpipefriction.obj) : error LNK2019: unresolved external symbol memmove referenced in function ufluidpipefriction
standardU_static.lib(umat_sst.obj) : error LNK2001: unresolved external symbol memmove
standardU_static.lib(uxfemnonlocalweight.obj) : error LNK2001: unresolved external symbol memmove
standardU_static.lib(uanisohyper_inv.obj) : error LNK2001: unresolved external symbol memmove
standardU_static.lib(uanisohyper_strain.obj) : error LNK2001: unresolved external symbol memmove
standardU_static.lib(ufluidconnectorloss.obj) : error LNK2001: unresolved external symbol memmove
standardU_static.lib(ufluidconnectorvalve.obj) : error LNK2001: unresolved external symbol memmove
standardU.dll : fatal error LNK1120: 4 unresolved externals
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.

To link Abaqus with Intel Fortran I followed this article: https://www.researchgate.net/publication/313924098_Linking_ABAQUS_2017_and_Intel_Parallel_Studio_XE2016_Visual_Fortran_in_Windows_10_x64

Can anyone help me? Thanks in advance!

0 Kudos
1 Solution
eric1949
Novice
2,244 Views

I solved the problem. Just installed Visual Studio 2013 with Intel Fortran 16 (Update 4) and the error went away! Anyway, thank you for your answers, @mecej4.

View solution in original post

0 Kudos
4 Replies
mecej4
Honored Contributor III
2,244 Views

This appears to be another instance of attempting to link with a set of VC libraries (msvcrxx, libcmt, etc.) that are incompatible with the VC libraries used (by the creator of Abaqus?) when the library standardU_static.lib was generated. What you have to do is

  1. Ascertain from Abaqus site/user-group which version of the MSVC libraries are compatible.
  2. Make sure that the version identified in Step 1 is installed on your system.
  3. When building the user DLL, make sure that the INCLUDE, LIB and PATH environment variables have been configured such that the version of MSVC identified in Step 1. appears before any other MSVC versions that happen to be installed.

Few of us in this forum are Abaqus users and therefore this is probably not the place to ask Abaqus-specific questions. 

0 Kudos
eric1949
Novice
2,244 Views

@mecej4 Thank you for your comment. I know that this forum is not specialized in Abaqus, but I thought that the error could be associated with Visual Studio and Fortran Libraries. 

The versions that I have installed are correct, accordingly with Abaqus site. 

About your Step 3, could you explain it in detail?

0 Kudos
mecej4
Honored Contributor III
2,244 Views

Your question (regarding the environment variables used by Visual C/C++ and associated tools) is addressed at https://docs.microsoft.com/en-us/cpp/build/setting-the-path-and-environment-variables-for-command-line-builds?view=vs-2019 .

0 Kudos
eric1949
Novice
2,245 Views

I solved the problem. Just installed Visual Studio 2013 with Intel Fortran 16 (Update 4) and the error went away! Anyway, thank you for your answers, @mecej4.

0 Kudos
Reply