[mpich-discuss] "undefined references"

Jeff Hammond jeff.science at gmail.com
Mon Jul 8 11:26:17 CDT 2013


I looked through the code and suspect Siesta is at fault but since
they rolled their own MPI F90 wrappers and I know very little about
F90, I cannot debug it.

You will see that there are no wrappers for send, recv, bcast or
reduce (the functions for which you get errors) in ./Src/MPI/mpi.F.
There are references to these in ./Src/MPI/mpi__*.f90 but I don't
understand what's going on very well.  It also appears that these
files are from a prototype implementation of the F90 module for MPI
1.1 written in 1996.  I don't know if that was before the MPI standard
defined F90 bindings, but it surely does now and applications should
use those instead.

The other thing you can do is turn off MPI in the utility code since
it might not be necessary there.

Jeff

On Mon, Jul 8, 2013 at 11:09 AM, Hana Milani <hana.milani at yahoo.com> wrote:
> yes, apologies
>
> ________________________________
> From: Hana Milani <hana.milani at yahoo.com>
> To: Pavan Balaji <balaji at mcs.anl.gov>
> Sent: Monday, July 8, 2013 7:53 PM
>
> Subject: Re: [mpich-discuss] "undefined references"
>
> yes Pavan, But it's a long time I have not received any response
>
>
> ________________________________
> From: Pavan Balaji <balaji at mcs.anl.gov>
> To: Hana Milani <hana.milani at yahoo.com>; discuss at mpich.org
> Sent: Monday, July 8, 2013 7:03 PM
>
> Subject: Re: [mpich-discuss] "undefined references"
>
>
> This doesn't look like an MPI error.  Did you contact the authors of
> whatever package you are trying to compile?
>
>   -- Pavan
>
> On 07/08/2013 08:25 AM, Hana Milani wrote:
>> Hello,
>>
>> I have compiled a code (siesta) by mpich2, blacs, lapack, blas and
>> scalapack. It works fine under grid computation. But when I want to
>> "make" a utility, I receive the following errors:
>>
>> [Home at localhost Gen-basis]$ make
>> /usr/local/bin/mpif90          -o gen-basis \
>>          alloc.o basis_types.o precision.o recipes.o parallel.o
>> parsing.o xcmod.o basis_io.o  chemical.o atm_transfer.o atm_types.o
>> atmparams.o old_atmfuncs.o radial.o io.o paste.o  flib_spline.o
>> bessph.o  m_filter.o basis_specs.o atom.o memoryinfo.o memory.o
>> periodic_table.o pseudopotential.o pxf.o dot.o xc.o  atom_options.o
>> arw.o sys.o timer.o  xml.o m_walltime.o gen-basis.o nag.o libfdf.a
>> /home/Home/Packages/scalapack-2.0.2/libscalapack.a
>> /home/Home/Packages/BLACS/LIB/blacsCinit_MPI-LINUX-0.a
>> /home/Home/Packages/BLACS/LIB/blacsF77init_MPI-LINUX-0.a
>> /home/Home/Packages/BLACS/LIB/blacs_MPI-LINUX-0.a
>> /home/Home/Packages/lapack-3.4.2/liblapack.a
>> /home/Home/Packages/BLAS/blas_LINUX.a
>> alloc.o: In function `print_report':
>>
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/alloc.F90:1705:
>> undefined reference to `__mpi__r8_s_MOD_mpi_reduce_t'
>>
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/alloc.F90:1707:
>> undefined reference to `__mpi__r8_v_MOD_mpi_reduce_t'
>>
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/alloc.F90:1711:
>> undefined reference to `__mpi__integer_s_MOD_mpi_bcast_t'
>>
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/alloc.F90:1723:
>> undefined reference to `__mpi__r8_s_MOD_mpi_recv_t'
>>
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/alloc.F90:1718:
>> undefined reference to `__mpi__r8_s_MOD_mpi_send_t'
>> alloc.o: In function `__alloc_MOD_alloc_report':
>>
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/alloc.F90:318:
>> undefined reference to `__mpi__integer_s_MOD_mpi_bcast_t'
>>
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/alloc.F90:319:
>> undefined reference to `__mpi__integer_s_MOD_mpi_bcast_t'
>>
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/alloc.F90:320:
>> undefined reference to `__mpi__character_s_MOD_mpi_bcast_t'
>> xcmod.o: In function `__xcmod_MOD_setxc':
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/xcmod.F:136:
>> undefined
>> reference to `__mpi__integer_s_MOD_mpi_bcast_t'
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/xcmod.F:138:
>> undefined
>> reference to `__mpi__character_v_MOD_mpi_bcast_t'
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/xcmod.F:140:
>> undefined
>> reference to `__mpi__character_v_MOD_mpi_bcast_t'
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/xcmod.F:142:
>> undefined
>> reference to `__mpi__r8_v_MOD_mpi_bcast_t'
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/xcmod.F:144:
>> undefined
>> reference to `__mpi__r8_v_MOD_mpi_bcast_t'
>> memory.o: In function `printmemory_':
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/memory.F:144:
>> undefined reference to `__mpi__integer_s_MOD_mpi_allreduce_t'
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/memory.F:167:
>> undefined reference to `__mpi__integer_sv_MOD_mpi_gather_t'
>> timer.o: In function `timer1_':
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/timer.F:117:
>> undefined
>> reference to `__mpi__r8_s_MOD_mpi_allreduce_t'
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/timer.F:164:
>> undefined
>> reference to `__mpi__r8_v_MOD_mpi_reduce_t'
>> /home/Home/Packages/siesta-TEST-3.2/Util/Gen-basis/../../Src/timer.F:139:
>> undefined
>> reference to `__mpi__r8_v_MOD_mpi_reduce_t'
>> collect2: error: ld returned 1 exit status
>> make: *** [gen-basis] Error 1
>>
>> I will be really grateful if you kindly help me to solve this problem.
>>
>>
>> _______________________________________________
>> discuss mailing list    discuss at mpich.org
>> To manage subscription options or unsubscribe:
>> https://lists.mpich.org/mailman/listinfo/discuss
>>
>
> --
> Pavan Balaji
> http://www.mcs.anl.gov/~balaji
>
>
>
>
>
> _______________________________________________
> discuss mailing list     discuss at mpich.org
> To manage subscription options or unsubscribe:
> https://lists.mpich.org/mailman/listinfo/discuss



-- 
Jeff Hammond
jeff.science at gmail.com



More information about the discuss mailing list