Jeff,

Thanks for your feedback.

Although tempting, changing the version of OpenMPI would mean a significant 
amount of changes in our software stack. Hence I would like to find out what 
the problem is and hopefully its solution.

Where is the -L/usr/lib64 injected? Is there a way to patch the code so that it 
does not get added to the list of options to gfortran?


--
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


On 2017-11-29 14:31:48-06:00 Jeff Squyres (jsquyres) wrote:

FWIW, adding -L/usr/lib or -L/usr/lib64 is generally considered Bad, because it 
may usurp the default linker path order.

I note that you're using Open MPI 1.10.3 -- if you're unwilling/unable to 
upgrade to Open MPI 3.0.x, could you upgrade to Open MPI 1.10.7?  We may well 
have fixed the issue in that time (i.e., do not have mpifort add -L/usr/lib64 
to the command line).


> On Nov 29, 2017, at 11:30 AM, Vanzo, Davide 
<davide.va...@vanderbilt.edu> wrote:
>
> Thank you Åke, Reuti and Thomas for your replies.
>
> Just to clarify. The reason why /usr/lib64/libgfortran.so does not 
exist is intentional because on our cluster we use a minimal CentOS 
installation and all libraries are provided through the software stack built 
via EasyBuild on a non-system path.
>
> The output of `mpifort -show` shows the correct executable for 
`gfortran` ( I checked with `which gfortran`):
>
> $ mpifort multitask_mpi.f90 -show
> gfortran multitask_mpi.f90 
-I/accre/arch/easybuild/software/Compiler/GCC/5.4.0-2.26/OpenMPI/1.10.3/include 
-I/accre/arch/easybuild/software/Compiler/GCC/5.4.0-2.26/OpenMPI/1.10.3/lib 
-L/usr/lib64 -Wl,-rpath -Wl,/usr/lib64 -Wl,-rpath 
-Wl,/accre/arch/easybuild/software/Compiler/GCC/5.4.0-2.26/OpenMPI/1.10.3/lib 
-Wl,--enable-new-dtags 
-L/accre/arch/easybuild/software/Compiler/GCC/5.4.0-2.26/OpenMPI/1.10.3/lib 
-lmpi_usempif08 -lmpi_usempi_ignore_tkr -lmpi_mpifh -lmpi
>
>
> If I try to compile the source code with the explicit command after 
removing the `-L/usr/lib64` flag it compiles, links and executes correctly.
>
> For the sake of testing I have built OpenMPI in the same exact way on 
another machine with the same minimal OS. The only difference (at least that I 
am aware of) is the root prefix of the installation path. In this case it works 
correctly even without removing `-L/usr/lib64`.
>
> To try to better understand, I have launched `mpifort -v`. Below you 
can find the paths in COMPILER_PATH and LIBRARY_PATH for both systems.
> Take into account that on the broken system `/accre/arch` is a symlink 
to `/gpfs22/accre/optimized/haswell`. But I do not see how this can be the 
problem...
>
>
> Working system:
>
> COMPILER_PATH
> 
/accre/arch/easybuild/software/Core/GCCcore/5.4.0/libexec/gcc/x86_64-unknown-linux-gnu/5.4.0/
> 
/accre/arch/easybuild/software/Core/GCCcore/5.4.0/libexec/gcc/x86_64-unknown-linux-gnu/5.4.0/
> 
/accre/arch/easybuild/software/Core/GCCcore/5.4.0/libexec/gcc/x86_64-unknown-linux-gnu/
> 
/accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib/gcc/x86_64-unknown-linux-gnu/5.4.0/
> 
/accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib/gcc/x86_64-unknown-linux-gnu/
>
> LIBRARY_PATH
> /accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib64/../lib64/
> /accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib/../lib64/
> 
/accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib/gcc/x86_64-unknown-linux-gnu/5.4.0/
> 
/accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib/gcc/x86_64-unknown-linux-gnu/5.4.0/../../../../lib64/
> /lib/../lib64/
> /usr/lib/../lib64/
> 
/accre/arch/easybuild/software/Compiler/GCC/5.4.0-2.26/OpenMPI/1.10.3/lib/
> 
/accre/arch/easybuild/software/Compiler/GCC/5.4.0-2.26/hwloc/1.11.3/lib/
> 
/accre/arch/easybuild/software/Compiler/GCCcore/5.4.0/numactl/2.0.11/lib/
> 
/accre/arch/easybuild/software/Compiler/GCCcore/5.4.0/binutils/2.26/lib/
> /accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib64/
> /accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib/
> 
/accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib/gcc/x86_64-unknown-linux-gnu/5.4.0/../../../
> /lib/
> /usr/lib/
>
>
> Broken system:
>
> COMPILER_PATH
> 
/gpfs22/accre/optimized/haswell/easybuild/software/Core/GCCcore/5.4.0/bin/../libexec/gcc/x86_64-unknown-linux-gnu/5.4.0/
> 
/gpfs22/accre/optimized/haswell/easybuild/software/Core/GCCcore/5.4.0/bin/../libexec/gcc/
>
> LIBRARY_PATH
> 
/gpfs22/accre/optimized/haswell/easybuild/software/Core/GCCcore/5.4.0/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.4.0/
> 
/gpfs22/accre/optimized/haswell/easybuild/software/Core/GCCcore/5.4.0/bin/../lib/gcc/
> /accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib64/../lib64/
> /accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib/../lib64/
> 
/gpfs22/accre/optimized/haswell/easybuild/software/Core/GCCcore/5.4.0/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.4.0/../../../../lib64/
> /lib/../lib64/
> /usr/lib/../lib64/
> 
/accre/arch/easybuild/software/Compiler/GCC/5.4.0-2.26/OpenMPI/1.10.3/lib/
> 
/accre/arch/easybuild/software/Compiler/GCC/5.4.0-2.26/hwloc/1.11.3/lib/
> 
/accre/arch/easybuild/software/Compiler/GCCcore/5.4.0/numactl/2.0.11/lib/
> 
/accre/arch/easybuild/software/Compiler/GCCcore/5.4.0/binutils/2.26/lib/
> /accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib64/
> /accre/arch/easybuild/software/Core/GCCcore/5.4.0/lib/
> 
/gpfs22/accre/optimized/haswell/easybuild/software/Core/GCCcore/5.4.0/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.4.0/../../../
> /lib/
> /usr/lib/
>
>
>
> --
> 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
> 
https://na01.safelinks.protection.outlook.com/?url=www.accre.vanderbilt.edu&data=02%7C01%7Cdavide.vanzo%40vanderbilt.edu%7C1f3e5680dd0945f67d1e08d537681319%7Cba5a7f39e3be4ab3b45067fa80faecad%7C0%7C0%7C636475842977866507&sdata=FzLNf8Qqe2fFbjTg8MguxgqHEL7UgRuAjzyWMRZhGWk%3D&reserved=0
>
> _______________________________________________
> users mailing list
> users@lists.open-mpi.org
> 
https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.open-mpi.org%2Fmailman%2Flistinfo%2Fusers&data=02%7C01%7Cdavide.vanzo%40vanderbilt.edu%7C1f3e5680dd0945f67d1e08d537681319%7Cba5a7f39e3be4ab3b45067fa80faecad%7C0%7C0%7C636475842978022750&sdata=%2BBlFqFS3vVJDjjySxtd9vtZQtNE0uvErZaBw2yVCXsQ%3D&reserved=0


--
Jeff Squyres
jsquy...@cisco.com

_______________________________________________
users mailing list
users@lists.open-mpi.org
https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.open-mpi.org%2Fmailman%2Flistinfo%2Fusers&data=02%7C01%7Cdavide.vanzo%40vanderbilt.edu%7C1f3e5680dd0945f67d1e08d537681319%7Cba5a7f39e3be4ab3b45067fa80faecad%7C0%7C0%7C636475842978022750&sdata=%2BBlFqFS3vVJDjjySxtd9vtZQtNE0uvErZaBw2yVCXsQ%3D&reserved=0</davide.va...@vanderbilt.edu>
_______________________________________________
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

Reply via email to