[MPICH] problems with MPICH2 on a 64 bit platform
    William Gropp 
    gropp at mcs.anl.gov
       
    Mon Jul 30 17:46:51 CDT 2007
    
    
  
Hi Paula,
In the first case, the default name of the MPI library for MPICH2 is  
libmpich.a , so you'll need -lmpich instead of -lmpi .  We did this  
to avoid conflicts with vendor-supplied libmpi.a , but if you don't  
have a vendor-supplied mpi library, you can change the name that  
MPICH2 uses for the library (I believe with the environment variable  
MPILIBNAME).
In case 2, MPICH2 has been configured to support threads  
(MPI_THREAD_MULTIPLE), and it is using routines from the pthread  
library to ensure that the threads do not interfere with each other.   
You can either configure MPICH2 with --enable-threads=funneled or add  
-lpthreads to the link line
Bill
On Jul 30, 2007, at 5:30 PM, Paula González wrote:
> Hello!
> My name is Paula González and I'm working on a 64 bit platform,  
> under Ubuntu Feisty Fawn. I compiled MPICH2 using 64-bit  Intel  
> ifort but I believe I got it wrong, since I'm getting different  
> error messages.
>
> 1 case:
>
> ifort time_manager.o spherical_fourier.o mpp_data.o  
> shallow_diagnostics.o atmos_model.o mpp_io.o atmosphere.o fms_io.o  
> tracer_manager.o diag_util.o spectral_damping.o fft.o  
> shallow_physics.o memuse.o memutils.o threadloc.o diag_data.o  
> diag_axis.o get_cal_time.o diag_manager.o transforms.o spherical.o  
> constants.o fms.o mpp_pset.o spec_mpp.o grid_fourier.o  
> field_manager.o diag_output.o gauss_and_legendre.o nsclock.o  
> leapfrog.o mpp_parameter.o platform.o fv_advection.o mpp.o fft99.o  
> mpp_domains.o shallow_dynamics.o -o fms.x -L/usr/local/lib -lnetcdf  
> -lmpi -lsma
> ld: cannot find -lmpi
>
> another case:
>
> /usr/local/lib/libmpich.a(allreduce.o ): In function  
> `MPIR_Allreduce_inter':
> allreduce.c:(.text+0x1ce): undefined reference to  
> `pthread_getspecific'
> allreduce.c:(.text+0x1fe): undefined reference to  
> `pthread_setspecific'
> /usr/local/lib/libmpich.a( allreduce.o): In function `MPIR_Allreduce':
> allreduce.c:(.text+0x54c): undefined reference to  
> `pthread_getspecific'
> allreduce.c:(.text+0x57c): undefined reference to  
> `pthread_setspecific'
>
> and so on.
>
>
> Could these be related to the fact that I did not onfigure my  
> MPICH2 correctly? Can you Help me ?
>
>
> Thanks!!!
>
> Paula González
>
> -- 
> << we are drowning, the small ones, with loose lips and lies ... >>
    
    
More information about the mpich-discuss
mailing list