Good morning all!
I am running my linux installation under Centos5 and am having difficulty with a linking error in sisyphe and the subsequent telemac2d and tomawac compiles.
The error occurs after compilation of sisyphe and cannot find -lf2c.
The options seem to be correct in systel.ini - shown below (with -lf2c as options for both LNK_OPT_NORMAL and LIBS_MPI).
Hence sisyphev6p0.a is not written.
I would be grateful for any help with this problem.
[intel64]
DIRLIB=intel64
# Intel compiler options
FC_NAM="ifort"
FC_OPT_OBJEXT="o"
FC_OPT_COMPIL=" -c -O2 -convert big_endian "
FC_OPT_DEBUG=" -c -O0 -C -g -convert big_endian"
FC_OPT_PROFILE=" -c -O2 -pg -convert big_endian "
FC_OPT_INCLUDE="-I "
#
LK_NAM="ifort"
LK_OPT_NORMAL=" -lf2c -lm -lz -lstdc++ -v "
LK_OPT_OUTNAME=" -o "
LK_OPT_DEBUG=" -g90 "
LK_OPT_PROFILE=" -pg "
LK_OPT_OTHERS=" "
LK_LIB_SPECIAL=" "
#IF MED AND HDF5
#LK_LIB_SPECIAL=" <TELEMAC_HOME>/MED/<DIRLIB>/lib/libmed.a <TELEMAC_HOME>/HDF5/<DIRLIB>/lib/libhdf5.a "
#
LIB_NAM=ar
LIB_OPT_LIBEXT="a"
LIB_OPT_OUTNAME="cru"
LIB_OPT_OTHERS=
LIB_RANLIB="ranlib"
#
RUN_DEBUG="dbx90 "
RUN_PROFILE=
# in Telemac distribution
FC_MPI="/export/apps/mpich2/bin/mpif90"
LK_MPI="/export/apps/mpich2/bin/mpif90 -o <EXE> <OBJS> <LIBS> "
LIBS_MPI="-L /export/apps/mpich2/lib -lmpich -lf2c -lm -lz -lstdc++ "
RUN_MPI="/export/apps/mpich2/bin/mpirun -machinefile mpirun.txt -np <N> <EXE>"
#
#
#
# IF YOU WANT TO USE ARTEMIS// PLEASE UNCOMMENT INCDIRMUMPS AND LIBSMUMPSPAR
#
# 1 FILL BELOW THE LOCATION OF YOUR MUMPS INCLUDE DIRECTORY (INCDIRMUMPS =...)
#INCDIRMUMPS = <TELEMAC_HOME>/MUMPS_4.9.0/include
#LIBMUMPSPAR="<TELEMAC_HOME>/mumpsmpi/mumpsmpi_<VERSARTE>/<HOSTTYPE>/mumpsmpi<VERSARTE>.a -L<TELEMAC_HOME>/MUMPS_4.9.0/lib/ -ldmumps -lmumps_common -lpord -L/home/logiciels/intel/mkl/10.2.1.017/lib/em64t -lmkl_scalapack_lp64 -lmkl_blacs_ilp64 -lmkl_intel_lp64 -lmkl_sequential -lmkl_core -lguide -static-intel -L<TELEMAC_HOME>/metis-4.0/lib/ -lbmetis -L<TELEMAC_HOME>/scotch_5.1_esmumps/lib -lesmumps -lscotch -lscotcherr -lm"
#LIBMUMPSSEQ="<TELEMAC_HOME>/mumpsvoid/mumpsvoid_<VERSARTE>/<HOSTTYPE>/mumpsvoid<VERSARTE>.a"
#
#
#
# IF YOU DO NOT WANT USE ARTEMIS// MUMPS LIBRARY IS NOT NECESSARILY
#
# SO UNCOMMENT THE FOLLOWING STATEMENT AND WRITE THE LOCATION OF MUMPSVOID_<VERSARTE>.A LIBRARY
#
# SHOULD BE <PROJECT>/mumpsvoid/mumpsvoid_<VERSARTE>/<HOSTTYPE>/mumpsvoid<VERSARTE>.a
#
LIBMUMPSPAR="<TELEMAC_HOME>/mumpsvoid/mumpsvoid_v6p0/<DIRLIB>/mumpsvoidv6p0.a"
LIBMUMPSSEQ="<TELEMAC_HOME>/mumpsvoid/mumpsvoid_v6p0/<DIRLIB>/mumpsvoidv6p0.a"
This directive -lf2c, which actually links with a system library transorming Fortran into C, is useful only for people who use the internal Electricité de France format called MED. So I think you can just remove the -lf2c and it will hopefully work.
Great news: The next TELEMAC User Conference will be organised by Bangor University on the 15th and 16th of October 2025, at the School of Ocean Sciences in Menai Bridge, on the Isle of Anglesey, Wale [ ... ]