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

command line compiling fortran code as a user subroutine for ABAQUS

SHENG__GUANG
Beginner
1,230 Views

Hi I am new with VS 2018 community for windows 10 for Abaqus 2017.  I run with command line compiler but have the following message while I tried to create an exe file. 

ifort vumatsmc.f
Intel(R) Visual Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 18.0.1.156 Build 20171018
Copyright (C) 1985-2017 Intel Corporation.  All rights reserved.
Microsoft (R) Incremental Linker Version 14.13.26129.0
Copyright (C) Microsoft Corporation.  All rights reserved.
-out:vumatsmc.exe
-subsystem:console
vumatsmc.obj
LINK : fatal error LNK1104: cannot open file 'libucrt.lib'

What is needed to resolve the issue?

Thanks,

Jong

0 Kudos
2 Replies
mecej4
Honored Contributor III
1,230 Views

You probably did not install the C++ compiler (not selected by default) when you installed Visual Studio. Even if you do not intend to use the C++ compiler yourself, the C libraries that come with it are needed for the Intel compiler to function.

0 Kudos
Greg_T_
Valued Contributor I
1,230 Views

Is the vumatsmc Fortran source file being compiled a subroutine or a program file? 

For Abaqus user subroutines, the umat or vumat source files are subroutines, so they would not be able to be compiled into an executable.  You could write a program source file that would call the user subroutine, which is a great way to test the user subroutine before using it in an Abaqus analysis.

Did you create a Visual Studio project for a console application?  That would default to trying to build an executable.

To include the user subroutine in an Abaqus analysis, I have success by opening the Intel Fortran command window from Start -> Intel Parallel Studio, which initializes the Intel Fortran environment variables.  I run the Abaqus job from that console window and include the "user=" syntax on the Abaqus command line to compile and link the user subroutine to the Abaqus analysis.  There is also information about this in the Abaqus user's manual.

Regards, Greg

0 Kudos
Reply