Reputation: 73
I'm trying to use gfortran with Abaqus 2016 on Ubuntu 16.04. I've already modified the .env file accoring to that : http://home.iitk.ac.in/~saiwal/computing/abaqus2016-2017-gfortran-compiler/
So the gfortran itself does not throw any errors at me anymore. But after using abaqus -verify -user_std -verbose
I get :
Begin Compiling Abaqus/Standard User Subroutines
Sun Dec 17 20:08:48 2017
Compiling std_user.f
Current directory: /tmp/konrad_std_user_15200
File to compile: /tmp/konrad_std_user_15200/std_user.f
>>> gfortran -c -fPIC -I/home/konrad/verify -I. -I/home/konrad/Simulia/solver/linux_a64/code/bin/SMAExternal/pmpi-9.1.2/include std_user.f
End Compiling Abaqus/Standard User Subroutines
Begin Linking Abaqus/Standard User Subroutines
Abaqus Error: The Abaqus user subroutine library could not be found.
This may indicate a problem with the Abaqus installation.
Please contact your system Administrator for further assistance.
Exception: (<class 'driverExceptions.UserSubroutineLibraryError'>, UserSubroutineLibraryError(), <traceback object at 0x1b88cf8>)
Traceback (most recent call last):
File "SMAPyaModules/SMAPyaDriverPy.m/src/driverAnalysis.py", line 201, in run
File "SMAPyaModules/SMAPyaDriverPy.m/src/driverStandard.py", line 80, in analyze
File "SMAPyaModules/SMAPyaDriverPy.m/src/driverSharedLibrary.py", line 344, in run
File "SMAPyaModules/SMAPyaDriverPy.m/src/driverSharedLibrary.py", line 571, in link
UserSubroutineLibraryError
Abaqus/Analysis exited with errors
Running: /home/konrad/Simulia/solver/linux_a64/code/bin/eliT_CheckLicense
Arguments: ['-standard', '-location']
License for standard is available.
Upvotes: 2
Views: 970
Reputation: 73
There were two things missing:
-The CAA package (since 2016 version the installer is separated to several files)
CAA developer software for Abaqus APIs: output database (ODB) C++ API,
user subroutines API,Abaqus Scripting Interface API, and SIMULIA Co-Simulation
Engine C++ API. This software includes libraries and .h header files.
The CAA (Component Application Architecture) API software is needed for
using user subroutines and compiling and building ODB, SIM, or results file
postprocessing applications.
It is recommended that you always install the CAA (API) software, even if
you are not sure that you will need it; otherwise, you may find that some
components need to be installed later before you can upgrade to a fix
pack (hot fix).
-in the lnx86_64.env file I've change the lines :
fortCmd = "gfortran" # <-- Fortran compiler
cppCmd = "gcc" # <-- C++ compiler
to
fortCmd = "gfortran" # <-- Fortran compiler
cppCmd = "gfortran" # <-- C++ compiler
So for any future references to have it running change link_sl
and compile_fortran
to :
compile_fortran = (fortCmd + " -c -fPIC -I%I")
link_sl = (fortCmd +
" -gcc-version=%i -fPIC -shared " +
"%E -Wl,-soname,%U -o %U %F %A %L %B -Wl,-Bdynamic " +
` " -lifport -lifcoremt")
fortCmd = "gfortran" # <-- Fortran compiler
cppCmd = "gfortran" # <-- C++ compiler
Upvotes: 3