[mpich-discuss] libmpich.so: undefined reference to ....

Dave Goodell goodell at mcs.anl.gov
Thu Apr 4 10:57:10 CDT 2013


It looks like Delft3D is building its libraries without using "mpicc" or any of the other compiler wrappers.  These wrappers add numerous internal MPI libraries to the link line, including "-lmpl", only some of which are captured in the existing Delft3D build system.  Please either use the compiler wrapper scripts to build your application or at least ensure that you are linking with all of the flags shown by "mpicc -show".

I also strongly recommend moving to MPICH 3.0.3 instead of MPICH2 1.4.1.  MPICH2 >=1.5 (and therefore MPICH >=3.0) have a newer build system that handles shared libraries in a substantially more robust manner.

-Dave

On Apr 4, 2013, at 9:44 AM CDT, "Boyington, Thomas Matthew" <tmboyington at tva.gov> wrote:

> Dear mpich community,
> 
> I’m getting numerous libmpich.so: undefined reference to XXX errors when building Delft3D (a CFD costal/river model). I’ve read the log files, Googled, and rtm’ed to no avail. I hope that the mpich mailing list can help me out.
> 
> I am running Red Hat Enterprise 6.3 64-bit, and I am building mpich 1.4.1. I have been able to build mpich successfully (I think…the examples described in the README file work) using the commands shown below. I’m using the Intel 2013 Fortran compiler, and I’m using the –enabled-shared, CFLAGS=”-fPIC” and CXXFLAGS=”-fPIC”  switches because of a previous Delft3D build error saying to build mpich with the –fPIC switch.
> 
> 
>         configure --prefix=/home/labuser/mpich2-install --enable-shared CFLAGS="-fPIC" CXXFLAGS="-fPIC" F77=ifort FC=ifort |& tee c.txt
> 
>         make 2>&1 | tee m.txt
> 
>         make install 2>&1 | tee mi.txt
> 
> When building Delft3D (again with the Intel compiler) I get the following errors in the make log. I’ve included my log files as attachments. Any suggestions on how to address this will be greatly appreciated?
> 
> libNefis.a ../../../../../engines_gpl/waq/packages/waq_utils_f/src/interact/.libs/libinteract.a ../../../../../engines_gpl/waq/packages/waq_utils_c/src/.libs/libwaq_utils_c.a ../../../../../engines_gpl/waq/packages/delwaq2_version_number/src/.libs/libdelwaq2_version_number.a -lfmpich -lmpich -lpthread -ldl -lrt -lexpat -lstdc++ -fopenmp -threads
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trid'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trvalid'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_env2int'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trrealloc'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trspace'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trDebugLevel'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_TrSetMaxMem'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trlevel'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trmalloc'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_env2bool'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_env2range'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trcalloc'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trfree'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_env2str'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trstrdup'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trdump'
> 
> /home/labuser/mpich2-install/lib/libmpich.so: undefined reference to `MPL_trinit'
> 
> make[5]: *** [delwaq2] Error 1
> 
> make[5]: Leaving directory `/home/labuser/Delft3D/2367/src/engines_gpl/waq/packages/delwaq2/src'
> 
> make[4]: *** [install-recursive] Error 1
> 
> make[4]: Leaving directory `/home/labuser/Delft3D/2367/src/engines_gpl/waq/packages/delwaq2'
> 
> make[3]: *** [install-recursive] Error 1
> 
> make[3]: Leaving directory `/home/labuser/Delft3D/2367/src/engines_gpl/waq/packages'
> 
> make[2]: *** [install-recursive] Error 1
> 
> make[2]: Leaving directory `/home/labuser/Delft3D/2367/src/engines_gpl/waq'
> 
> make[1]: *** [install-recursive] Error 1
> 
> make[1]: Leaving directory `/home/labuser/Delft3D/2367/src/engines_gpl'
> 
> make: *** [install-recursive] Error 1
> 
> 
> Thanks,
> 
> Matt
> 
> 
> --
> 
> T. Matthew Boyington
> 
> Civil Engineer, Water Resources
> 
> Hydrothermal Team
> 
> River Operations & Renewables
> 
> Tennessee Valley Authority
> 
> 400 West Summit Hill Drive, Knoxville, TN 37902
> 
> Office: (865) 632-8365
> 
> Cell: (865) 599-8265
> 
> 
> <<mi.zip>> <<config_openpa.zip>> <<config.zip>> <<c.zip>> <<m.zip>>
> 
> <mi.zip><config_openpa.zip><config.zip><c.zip><m.zip>_______________________________________________
> discuss mailing list     discuss at mpich.org
> To manage subscription options or unsubscribe:
> https://lists.mpich.org/mailman/listinfo/discuss




More information about the discuss mailing list