Re: [mpich-discuss] undefined symbol: MPI_UNWEIGHTED
I have figured out the problem. There was some sort of conflict with other libraries that were in my library path. In particular, I had Tecplot360EX in my LD_LIBRARY_PATH, and this package includes some libraries that take advantage of MPI-IO. Here is the result of ldd when this package was in my path: hyp22 rbaurle 2007> ldd hello.out linux-vdso.so.1 => (0x00007ffe001df000) libmpifort.so.12 => /opt/mpich/lib/libmpifort.so.12 (0x00002b0e09bf5000) libmpi.so.12 => /opt/tecplotex/bin/libmpi.so.12 (0x00002b0e09e2d000) libgfortran.so.3 => /usr/lib64/libgfortran.so.3 (0x00002b0e0a126000) libm.so.6 => /lib64/libm.so.6 (0x00000038bcc00000) libgcc_s.so.1 => /opt/tecplotex/bin/libgcc_s.so.1 (0x00002b0e0a419000) libc.so.6 => /lib64/libc.so.6 (0x00000038bc800000) librt.so.1 => /lib64/librt.so.1 (0x00000038bd800000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00000038bd400000) libopen-rte.so.12 => /opt/tecplotex/bin/libopen-rte.so.12 (0x00002b0e0a630000) libopen-pal.so.13 => /opt/tecplotex/bin/libopen-pal.so.13 (0x00002b0e0a8ab000) libpciaccess.so.0 => /usr/lib64/libpciaccess.so.0 (0x00000038bec00000) libdl.so.2 => /lib64/libdl.so.2 (0x00000038bd000000) libutil.so.1 => /lib64/libutil.so.1 (0x00000038ce800000) /lib64/ld-linux-x86-64.so.2 (0x00000038bc400000) When I removed this package from my LD_LIBRARY_PATH, the hello executable runs just fine and this is the result of of ldd: hyp22 rbaurle 2020> ldd hello.out linux-vdso.so.1 => (0x00007ffda41fd000) libmpifort.so.12 => /opt/mpich/lib/libmpifort.so.12 (0x00002ae95cdf7000) libmpi.so.12 => /opt/mpich/lib/libmpi.so.12 (0x00002ae95d02f000) libgfortran.so.3 => /usr/lib64/libgfortran.so.3 (0x00002ae95d4ce000) libm.so.6 => /lib64/libm.so.6 (0x00000038bcc00000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00000038c3c00000) libc.so.6 => /lib64/libc.so.6 (0x00000038bc800000) librt.so.1 => /lib64/librt.so.1 (0x00000038bd800000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00000038bd400000) /lib64/ld-linux-x86-64.so.2 (0x00000038bc400000) Thanks for the ldd suggestion, Rob On 08/10/2016 12:55 PM, Kenneth Raffenetti wrote:
Hi Robert,
Apologies for the delayed response. I'm unable to reproduce this on a CentOS 6 machine so far. Can you run ldd against your hello world binaries to double check the linkage? The MPI_UNWEIGHTED symbol should be resolved in the libmpi.so library by the inter-library dependency.
Ken
On 08/02/2016 02:00 PM, Robert Baurle wrote:
Sorry, I should have also stated that /opt/mpich is a symbolic link to /opt/mpich_gfc. I define /opt/mpich to be a symbolic link to either:
/opt/mpich_gfc
or
/opt/mpich_lahey
depending on which Fortran90 compiler I want to use. I currently have /opt/mpich symbolically linked to /opt/mpich_gfc, and /opt/mpich is defined in my paths as shown below
hyp22 rbaurle > echo $LD_LIBRARY_PATH /usr/lib64/atlas:/opt/tecplotex/bin:/opt/mpich/lib:/opt/lahey-64/lib64:/usr/local/lib
hyp22 rbaurle > echo $PATH /home/rbaurle/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/sbin:/opt/lahey-64/bin:/opt/tecplot/bin:/opt/gridpro/bin:/opt/mpich/bin:.:/home/rbaurle/Vulcan/vulcan.bzr/Vulcan/Scripts
Rob
On 08/02/2016 02:48 PM, Halim Amer wrote:
you are probably linking to the wrong MPICH. You installed MPICH to /opt/mpich_gfc but the error occurs for MPICH installed at /opt/mpich.
Do you have /opt/mpich in LD_LIBRARY_PATH? If that's the case, then you should remove it or place /opt/mpich_gfc before it.
--Halim
www.mcs.anl.gov/~aamer
On 8/2/16 11:33 AM, Robert Baurle wrote:
Hello,
I have installed MPICH 3.2 on a CENTOS 6 machine with the following configuration options:
setenv CC /usr/bin/gcc setenv FC /usr/bin/gfortran setenv CXX /usr/bin/c++ setenv INS_DIR /opt/mpich_gfc
../mpich-3.2/configure --prefix=$INS_DIR --with-device=ch3:nemesis |& tee configure.log
make --jobs 4 |& tee make.log
make install
and the installation appeared to have completed without error (see the attached configure.log and make.log files). However, when I attempt to run a simple hello_world FORTRAN 90 program, I get the following error:
hyp22 rbaurle 2293> mpirun -n 3 a.out < hello.inp a.out: symbol lookup error: /opt/mpich/lib/libmpifort.so.12: undefined symbol: MPI_UNWEIGHTED
If I repeat the installation, but change the Fortran90 compiler from GFORTRAN to the Lahey 8.1 compiler, i.e.:
setenv FC /opt/lahey-64/bin/lf95
then the hello_world program runs just fine. Do you have any idea what might be going on here? I should also mention that the same error appears if I install MPICH 3.1.3.
Thanks,
Rob
_______________________________________________ discuss mailing list [email protected] To manage subscription options or unsubscribe: https://lists.mpich.org/mailman/listinfo/discuss
_______________________________________________ discuss mailing list [email protected] To manage subscription options or unsubscribe: https://lists.mpich.org/mailman/listinfo/discuss
_______________________________________________ discuss mailing list [email protected] To manage subscription options or unsubscribe: https://lists.mpich.org/mailman/listinfo/discuss
discuss mailing list [email protected] To manage subscription options or unsubscribe: https://lists.mpich.org/mailman/listinfo/discuss
_______________________________________________ discuss mailing list [email protected] To manage subscription options or unsubscribe: https://lists.mpich.org/mailman/listinfo/discuss
participants (1)
-
Robert Baurle