error with mpi linking

hi,

i am facing problems installing cam3 on an itanium cluster. this is the error message i get, while linking all the .o files. in the end:

test_mpi.o: In function `MAIN__':
test_mpi.o(.text+0x0): multiple definition of `MAIN__'
cam.o(.text+0x0): first defined here
ld: Disabling relaxation: it will not work with multiple definitions
ld: Warning: size of symbol `MAIN__' changed from 5504 to 96 in test_mpi.o
STATICEcosysDynMod.o: In function `staticecosysdynmod_mp_readmonthlyvegetation_':
STATICEcosysDynMod.o(.text+0x21e2): undefined reference to `mpi_bcast_'
STATICEcosysDynMod.o(.text+0x2222): undefined reference to `mpi_bcast_'
STATICEcosysDynMod.o(.text+0x2262): undefined reference to `mpi_bcast_'
STATICEcosysDynMod.o(.text+0x22a2): undefined reference to `mpi_bcast_'
STATICEcosysDynMod.o(.text+0x22e2): undefined reference to `mpi_bcast_'
STATICEcosysDynMod.o(.text+0x2322): more undefined references to `mpi_bcast_' follow
make: *** [/home/gstcaos/ramaprakash/bin/cam3_mpi/bld/cam] Error 1

compilers are:
icc - Version 8.0 Build 20040101
ifort - Version 8.1 Build 20050203

i came across a similar thread in the forum where i saw that 'nm libmpich.a' should yield the address of mpi_bcast_. i tried this and it works.

the mpi library was already installed in the machine and i'm not sure which compiler would have been used for building it ( if it matters ).

i had successfully installed cam3 with these compilers 'without mpi' before and i have no clue what's happening now. any pointers will be helpful.

thanks,
rpb
 
rpb said:
hi,

i am facing problems installing cam3 on an itanium cluster. this is the error message i get, while linking all the .o files. in the end:

test_mpi.o: In function `MAIN__':
test_mpi.o(.text+0x0): multiple definition of `MAIN__'
cam.o(.text+0x0): first defined here
ld: Disabling relaxation: it will not work with multiple definitions
ld: Warning: size of symbol `MAIN__' changed from 5504 to 96 in test_mpi.o
STATICEcosysDynMod.o: In function `staticecosysdynmod_mp_readmonthlyvegetation_':
STATICEcosysDynMod.o(.text+0x21e2): undefined reference to `mpi_bcast_'
STATICEcosysDynMod.o(.text+0x2222): undefined reference to `mpi_bcast_'
STATICEcosysDynMod.o(.text+0x2262): undefined reference to `mpi_bcast_'
STATICEcosysDynMod.o(.text+0x22a2): undefined reference to `mpi_bcast_'
STATICEcosysDynMod.o(.text+0x22e2): undefined reference to `mpi_bcast_'
STATICEcosysDynMod.o(.text+0x2322): more undefined references to `mpi_bcast_' follow
make: *** [/home/gstcaos/ramaprakash/bin/cam3_mpi/bld/cam] Error 1

compilers are:
icc - Version 8.0 Build 20040101
ifort - Version 8.1 Build 20050203

i came across a similar thread in the forum where i saw that 'nm libmpich.a' should yield the address of mpi_bcast_. i tried this and it works.

the mpi library was already installed in the machine and i'm not sure which compiler would have been used for building it ( if it matters ).

i had successfully installed cam3 with these compilers 'without mpi' before and i have no clue what's happening now. any pointers will be helpful.

thanks,
rpb


Maybe you should try to specify the MPI Library by the configure variable accordingly.
For example, -mpi_inc dir -mpi_lib dir, where dir is the absolute directory contains the MPI Library/Include files that you installed. Cause the default directory may be not the right location.
Hope that help you.

---------------------------
Yours!
dfeijat@126.com
cams.cma
Friday,10/06/2005
 
Back
Top