Need help in using Intel Fortran with ABAQUS V6.6
Hello All,
I just installed ABAQUS V6.6, and to run user subroutine, I also installed Intel Fortran Compiler V8.1
After installation, I run ABAQUS verification and could not pass the user subroutine tests.
Following is included in the file std-user.log:
=============================
d:\users\abaqus60\6-r66\generated\inp\impl\inp_Parser.C.172:
Parse - File: std_user.inp Elapsed time: 0.00384813 Decryption time: 0. C
PU time: 0.
Processing time = 0 second(s).
ABAQUS JOB std_user
ABAQUS Version 6.6-1
DriverLM executable: C:\ABAQUS\6.6-1\exec\eliT_DriverLM.exe
-job std_user -indir C:\abaqus_temp\verify -standard -verbose -tmpdir C:\DOCUME~1\Dejun\LOCALS~1\Temp\Dejun_std_user_2556 -lmlog
DriverLM status: 0
Platform: nt
FORTRAN extension: for
Object extension: obj
Shared library name: standardU.dll
User subroutine archive file: standardU_static.lib
Utility shared library file: standardB.lib
Begin Compiling ABAQUS/Standard User Subroutines
8/6/2006 130 AM
Compiling std_user.for
Compile command: [ifort, /c, /Gm, /nologo, /include\\abaqus_temp\\verify, std_user.for]
Checkout succeeded: FCompW/F727CC746CC0
License file: C:\Program Files\Common Files\Intel\Licenses\NCOM_W_CMP_FOR_S65W-2PRWNRPB.lic
No server used
End Compiling ABAQUS/Standard User Subroutines
8/6/2006 130 AM
Begin Linking ABAQUS/Standard User Subroutines
8/6/2006 130 AM
export.sym: _CREEP@104
export.sym: _DFLOW@44
export.sym: _DFLUX@52
export.sym: _DISP@32
export.sym: _DLOAD@48
export.sym: _FILM@64
export.sym: _FLOW@48
export.sym: _FRIC@168
export.sym: _GAPCON@72
export.sym: _GAPELECTR@64
export.sym: _HARDINI@48
export.sym: _HETVAL@36
export.sym: _MPC@80
export.sym: _ORIENT@48
export.sym: _RSURFU@64
export.sym: _SDVINI@32
export.sym: _SIGINI@44
export.sym: _UCORR@48
export.sym: _UCOSIMULATION@24
export.sym: _UCRACK@240
export.sym: _UEL@144
export.sym: _UEXPAN@48
export.sym: _UEXTERNALDB@24
export.sym: _UFIELD@44
export.sym: _UFLUID@76
export.sym: _UFLUIDLEAKOFF@96
export.sym: _UGENS@148
export.sym: _UHARD@92
export.sym: _UHYPEL@56
export.sym: _UHYPER@76
export.sym: _UINTER@188
export.sym: _UMASFL@28
export.sym: _UMAT@152
export.sym: _UMATHT@112
export.sym: _UMESHMOTION@64
export.sym: _UMOTION@24
export.sym: _UMULLINS@80
export.sym: _UPOREP@12
export.sym: _UPRESS@24
export.sym: _UPSD@24
export.sym: _URDFIL@24
export.sym: _USDFLD@108
export.sym: _UTEMP@28
export.sym: _UTRACLOAD@48
export.sym: _UTRS@44
export.sym: _UVARM@92
export.sym: _UWAVE@104
export.sym: _VOIDRI@12
Linking [std_user.obj] into user subroutine shared library
Link command: [LINK, /nologo, /INCREMENTAL:NO, /subsystem:console, /machine:I386, /NODEFAULTLIB:LIBC.LIB, /DEFAULTLIB:OLDNAMES.LIB, /DEFAULTLIB:LIBIFCOREMD.LIB, /DEFAULTLIB:LIBIFPORTMD.LIB, /DEFAULTLIB:LIBMMD.LIB, /DEFAULTLIB:MSVCRT.LIB, /DEFAULTLIB:kernel32.lib, /DEFAULTLIB:user32.lib, /DEFAULTLIB:advapi32.lib, /FIXED:NO, /dll, /def:export.def, /out:standardU.dll, std_user.obj, C:\\ABAQUS\\6.6-1\\exec\\lbr\\standardU_static.lib, C:\\ABAQUS\\6.6-1\\exec\\lbr\\standardB.lib, C:\\ABAQUS\\6.6-1\\exec\\lbr\\ABQmem_import.lib, C:\\ABAQUS\\6.6-1\\exec\\lbr\\ABQeli_import.lib, oldnames.lib, user32.lib, ws2_32.lib, netapi32.lib, advapi32.lib]
Checkout succeeded: standard/A9B464F27B08
License file: [email]27005@license-abaqus.engin.umich.edu[/email]
License Server: [email]27005@license-abaqus.engin.umich.edu[/email]
Traceback (most recent call last):
File std_user.com, line 63, in ?
status = analysis.run()
File Python/driver/driverAnalysis.py, line 166, in run
File Python/driver/driverStandard.py, line 59, in analyze
File Python/driver/driverSharedLibrary.py, line 167, in run
File Python/driver/driverSharedLibrary.py, line 307, in link
File Python/HKS/uti/impl/uti.py, line 34, in spawnAndWait
ValueError: [color=red]LINK.exe not found in PATH[/color].
=============================
Anyone knows why the error [color=red]LINK.exe not found in PATH[/color]. happen? How to correct this?
Thank you very much!
Regards,
Derek
To compile a user material subroutine for ABAQUS on a PC you need not only the Intel Fortran Compiler but also Microsoft Visual C++* .NET or Microsoft Visual Studio .NET. The LINK.exe file that is missing on your computer is provided through the Microsoft software.
- Jorgen
[quote=Jorgen_Bergstrom]To compile a user material subroutine for ABAQUS on a PC you need not only the Intel Fortran Compiler but also Microsoft Visual C++* .NET or Microsoft Visual Studio .NET. The LINK.exe file that is missing on your computer is provided through the Microsoft software.
- Jorgen[/quote]
Thanks a lot for replying, Jorgen.
I installed MS Visual Studio, which includes VC++. Indeed, without Visual Studio, I found a warning came during installing Intal Fortran. So, I installed MS Visual Studio 2002 before intalling Intel Fortran V8.1.
I did following 3 tries:
(1) I run [b]start>Programs>Abaqus V6.6-1>ABAQUS Verification[/b], all verifications passed except those with user subroutine. The error is link.exe not included in PATH
(2) I run [b]start>Programs>Abaqus V6.6-1>ABAQUS Command[/b],
then I type : abaqus verify -all
I got the same result as (1)
(3) I run [b]Start>Programs>Intel Software Development Tools>Intel Fortran Compiler 8.1>Build Environment for FORTRAN IA-32 Applications[/b],
then I type : abaqus verify -all
this time, all verifications passed successfully.
So, (2) and (3) both used command line, but different result.
I checked the property of (2) shortcut, finding following:
Target: [color=red]C:\WINDOWS\system32\cmd.exe /K [/color]
The property of (3) short target is:
Target: [color=red]C:\WINDOWS\system32\cmd.exe /K C:\Intel\Fortran\compiler80\IA32\BIN\IFORTVars.bat [/color]
So, I think [color=green]C:\Intel\Fortran\compiler80\IA32\BIN\IFORTVars.bat[/color] must be missing somewhere in ABAQUS setting.
I copied (3) shortcut property to (2) shortcut, now ABAQUS command line is working. Thats fine.
However, I still think I need to change someplace in ABAQUS setting, since running [b]start>Programs>Abaqus V6.6-1>ABAQUS Verification[/b] still get error.
I checked the file abaqus_v6.env, but I dont know how to change it.
Do you know how to solve this?
Thanks a lot.
Regards,
Derek
The main purpose of the IFORTVars.bat file is to set various environmental variables. You can probably set those environmental variables directly from the abaqus_v6.env file by adding the following type of lines:
import os
os.environ[PATH] = C...
os.environ[LIB] = C:\\...
del os
Note, you need to modify my example above so that it agrees with the IFORTVars.bat file.
- Jorgen
Hi Jorgen,
Thank you for your reply.
I checked the file [b]abaqus_v6.env[/b] and [b]IFORTVars.bat[/b], and I am confused about their formats. I really have no idea how to modify the abaqus_v6.env. I tried several times and still get error.
I quote the codes of these two files here, could you please give me some hints?
[color=red]abaqus_v6.env[/color]
[code]#
# System-Wide ABAQUS Environment File
# -------------------------------------
pre_memory = 256 mb
standard_memory = 256 mb
standard_parallel = ALL
mp_mode = MPI
mp_file_system = (,DETECT,DETECT),
mp_environment_export = (,ABA_CM_BUFFERING,
ABA_DDM_DEBUG,
ABA_ELP_SURFACE_SPLIT,
ABA_ELP_SUSPEND,
ABA_MEMORY_MODE,
ABA_MPI_MESSAGE_TRACKING,
ABA_MPI_VERBOSE_LEVEL,
ABA_PATH,
ABA_RESOURCE_MONITOR,
ABA_RESOURCE_USEMALLINFO,
ABAQUS_LANG,
ABAQUSLM_LICENSE_FILE,
ABQ_CRTMALLOC,
ABQ_DATACHECK,
ABQ_RECOVER,
ABQ_RESTART,
ABQ_SPLITFILE,
ABQ_XPL_WINDOWDUMP,
ABQ_XPL_PARTITIONSIZE,
ABQLMHANGLIMIT,
ABQLMQUEUE,
ABQLMUSER,
CCI_INITIAL_EXCHANGE,
ABAQUS_CCI_DEBUG,
CCI_RENDEZVOUS,
DOMAIN,
DOMAIN_CPUS,
FLEXLM_DIAGNOSTICS,
FOR0006,
FOR0064,
LD_PRELOAD,
MP_NUMBER_OF_THREADS,
MPC_GANG,
MPI_PROPAGATE_TSTP,
MPI_SOCKBUFSIZE,
MPI_WORKDIR,
NCPUS,
OMP_DYNAMIC,
OMP_NUM_THREADS,
PAIDUP,
PARALLEL_METHOD,
RAIDEV_NDREG_LAZYMEM),
compile_cpp=[,cl, /c, /nologo, /W0, /MD,
/TP, /GX, /DNDEBUG, /DWIN32, /DTP_IP, /D_CONSOLE,
/DNTI, /DFLT_LIC, /DOL_DOC, /D__LIB__, /DHKS_NT,
/DFAR=, /D_WINDOWS, /O1, /I%I],
compile_fortran=[,ifort, /c, /Gm,/nologo, /include:,%I],
link_sl=[,LINK, /nologo, /INCREMENTAL:,NO, /subsystem:,console, /machine:,I386, /NODEFAULTLIB:,LIBC.LIB, /DEFAULTLIB:,OLDNAMES.LIB, /DEFAULTLIB:,LIBIFCOREMD.LIB, /DEFAULTLIB:,LIBIFPORTMD.LIB, /DEFAULTLIB:,LIBMMD.LIB, /DEFAULTLIB:,MSVCRT.LIB, /DEFAULTLIB:,kernel32.lib, /DEFAULTLIB:,user32.lib, /DEFAULTLIB:,advapi32.lib, /FIXED:,NO, /dll, /def:,%E, /out:,%U, %F, %A, %B, oldnames.lib, user32.lib, ws2_32.lib, netapi32.lib, advapi32.lib],
link_exe=[,LINK, /nologo, /INCREMENTAL:,NO, /subsystem:,console, /machine:,I386, /NODEFAULTLIB:,LIBC.LIB, /DEFAULTLIB:,OLDNAMES.LIB, /DEFAULTLIB:,LIBIFCOREMD.LIB, /DEFAULTLIB:,LIBIFPORTMD.LIB, /DEFAULTLIB:,LIBMMD.LIB, /DEFAULTLIB:,MSVCRT.LIB, /DEFAULTLIB:,kernel32.lib, /DEFAULTLIB:,user32.lib, /DEFAULTLIB:,advapi32.lib, /FIXED:,NO, /LARGEADDRESSAWARE, /out:,%J, %F, %M, %L, %B, %O, oldnames.lib, user32.lib, ws2_32.lib, netapi32.lib, advapi32.lib],
#
# If you are attempting to compile C++ programs using ABAQUS/Make without a
# Fortran compiler installed on your machine, uncommenting the following
# link_exe command may help resolve any link errors.
#
# link_exe=[,LINK, /nologo, /INCREMENTAL:,NO, /subsystem:,console, /machine:,I386, /NODEFAULTLIB:,LIBC.LIB, /DEFAULTLIB:,OLDNAMES.LIB, /NODEFAULTLIB:,LIBIFCOREMD.LIB, /NODEFAULTLIB:,LIBIFPORTMD.LIB, /NODEFAULTLIB:,LIBMMD.LIB, /DEFAULTLIB:,MSVCRT.LIB, /DEFAULTLIB:,kernel32.lib, /DEFAULTLIB:,user32.lib, /DEFAULTLIB:,advapi32.lib, /FIXED:,NO, /LARGEADDRESSAWARE, /out:,%J, %F, %M, %L, %B, %O, oldnames.lib, user32.lib, ws2_32.lib, netapi32.lib, advapi32.lib],
standard_parallel = SOLVER
mp_mode = THREADS
import driverUtils, os
graphicsEnv = driverUtils.locateFile(,os.environ[,ABA_PATH],,site,graphicsConfig,env),
if graphicsEnv:,
execfile(,graphicsEnv),
else:,
raise Cannot find the graphics configuration environment file (,graphicsConfig.env),
del driverUtils, os, graphicsEnv
abaquslm_license_file=27005@license-abaqus.engin.umich.edu
doc_root=file:,///C:,/ABAQUS/Documentation/docs/v6.6/index.html
[/code]
[color=red]IFORTVars.bat[/color]
[code]@echo off
Rem Intel(,R), Visual Fortran Compiler Build Environment for 32-bit applications
echo.
echo Intel(,R), Visual Fortran Compiler 8.1 Build Environment for 32-bit applications
echo Copyright (,C), 1985-2006 Intel Corporation. All rights reserved.
echo.
@call C:,\Program_Files\Microsoft Visual Studio .NET\Vc7\Bin\Vcvars32.bat
echo.
SET INTEL_COMPILER8.0=C:,\Intel\Fortran\Compiler80
SET INTEL_SHARED=C:,\Program Files\Common Files\Intel\Shared Files
SET INTEL_LICENSE_FILE=C:,\Program Files\Common Files\Intel\Licenses
SET PATH=%Intel_COMPILER8.0%\Ia32\Bin,%INTEL_SHARED%\Ia32\Bin,%PATH%
SET LIB=%Intel_COMPILER8.0%\Ia32\Lib,%INTEL_SHARED%\Ia32\Lib,%LIB%
SET INCLUDE=%Intel_COMPILER8.0%\Ia32\Include,%INCLUDE%
[/code]
My try
According to [b]IFORTVars.bat[/b], I added following code to the end of [b]abaqus_v6.env[/b]
[code]import os
os.environ[,PATH], = %Intel_COMPILER8.0%\Ia32\Bin,%INTEL_SHARED%\Ia32\Bin,%PATH%
os.environ[,LIB], = %Intel_COMPILER8.0%\Ia32\Lib,%INTEL_SHARED%\Ia32\Lib,%LIB%
del os [/code]
So, when I run ABAQUS verification:
Start>>All Programs>>ABAQUS 6.6-1>>ABAQUS Verification
I got following errors:
[quote]This application has failed to start because findVidLib.dll was not found. Re-installing the application may fix this problem.[/quote]
[quote]This application has failed to start because ABQmem.dll was not found. Re-installing the application may fix this problem.[/quote]
[quote]This application has failed to start because ABQinp.dll was not found. Re-installing the application may fix this problem.[/quote]
...............
➡ If you remove those 4 lines from the abaqus_v6.env file and then try to run a simulation that is not using a user-subroutine, then what happens?
➡ If you keep the 4 lines and then try to run a simulation from the command line that is using a user-subroutine, then what happens?
- Jorgen
Latest Post: BB Model for OptiStruct Nonlinear Static Our newest member: NursingAssignmentsHelp Recent Posts Unread Posts Tags
Forum Icons: Forum contains no unread posts Forum contains unread posts
Topic Icons: Not Replied Replied Active Hot Sticky Unapproved Solved Private Closed