Hi Davide,

On 20/11/2017 16:06, Vanzo, Davide wrote:
Hello EasyBuilders!

I have started building the foss-2016b toolchain on a new server and I am stumbling against an error that I have never seen before and for which I cannot pinpoint the cause.

When I try to compile a fortran source with mpifort (or mpif90), I get the error you see below. The thing I do not understand is why the linker searches for /usr/lib64/libgfortran.so (which does not exist for obvious reasons) instead of the equivalent library built by EasyBuild with GCCcore-5.4.0 (which exists). The LD_LIBRARY_PATH env var contains the path to the GCCcore directory where libgfortran.so is actually located. Why is ld ignoring this path?
Any suggestion?

I think ld(.gold) actually checks $LIBRARY_PATH when linking binaries, while $LD_LIBRARY_PATH is checked at runtime.

But I assume $LIBRARY_PATH also includes the location to libgfortran.so provide by GCCcore?

Do you get any useful output when running "LD_DEBUG=1 mpifort multitask_mpi.f90" (see http://www.bnikolic.co.uk/blog/linux-ld-debug.html)?


regards,

Kenneth


Thanks!



$ mpifort multitask_mpi.f90
/accre/arch/easybuild/software/Compiler/GCCcore/5.4.0/binutils/2.26/bin/ld.gold: error: cannot open /usr/lib64/libgfortran.so: No such file or directory /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_date_and_time' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_st_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_transfer_integer_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_string_trim' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_transfer_character_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_transfer_integer_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_transfer_integer_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_transfer_character_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_transfer_integer_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_transfer_character_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_transfer_character_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_string_trim' /tmp/ccpSxqE6.o:multitask_mpi.f90:function timestamp_: error: undefined reference to '_gfortran_st_write_done' /tmp/ccpSxqE6.o:multitask_mpi.f90:function p0_receive_output_: error: undefined reference to '_gfortran_st_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function p0_receive_output_: error: undefined reference to '_gfortran_st_write_done' /tmp/ccpSxqE6.o:multitask_mpi.f90:function p0_receive_output_: error: undefined reference to '_gfortran_st_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function p0_receive_output_: error: undefined reference to '_gfortran_st_write_done' /tmp/ccpSxqE6.o:multitask_mpi.f90:function p0_receive_output_: error: undefined reference to '_gfortran_st_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function p0_receive_output_: error: undefined reference to '_gfortran_st_write_done' /tmp/ccpSxqE6.o:multitask_mpi.f90:function MAIN__: error: undefined reference to '_gfortran_stop_string' /tmp/ccpSxqE6.o:multitask_mpi.f90:function MAIN__: error: undefined reference to '_gfortran_transfer_real_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function MAIN__: error: undefined reference to '_gfortran_stop_string' /tmp/ccpSxqE6.o:multitask_mpi.f90:function MAIN__: error: undefined reference to '_gfortran_transfer_real_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function MAIN__: error: undefined reference to '_gfortran_stop_string' /tmp/ccpSxqE6.o:multitask_mpi.f90:function MAIN__: error: undefined reference to '_gfortran_transfer_real_write' /tmp/ccpSxqE6.o:multitask_mpi.f90:function MAIN__: error: undefined reference to '_gfortran_stop_string' /tmp/ccpSxqE6.o:multitask_mpi.f90:function main: error: undefined reference to '_gfortran_set_args' /tmp/ccpSxqE6.o:multitask_mpi.f90:function main: error: undefined reference to '_gfortran_set_options'
collect2: error: ld returned 1 exit status

--
*Davide Vanzo, PhD*
Application Developer
Adjunct Assistant Professor of Chemical and Biomolecular Engineering
Advanced Computing Center for Research and Education (ACCRE)
Vanderbilt University - Hill Center 201
(615)-875-9137
www.accre.vanderbilt.edu

Reply via email to