Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] undefined reference to `pthread_atfork' (Lahey Fujitsu compiler AMD64)
From: Brian W. Barrett (brbarret_at_[hidden])
Date: 2007-12-13 18:05:00

On Wed, 12 Dec 2007, Alex Pletzer wrote:

> I'm on a AMD64 box (Linux 2.6.19-1.2288.fc5 #1 SMP
> Sat Feb 10 14:59:35 EST 2007 x86_64 x86_64 x86_64 GNU/Linux) and
> compiled openmpi-1.2.4 using the Lahey-Fujitsu compiler (lfc). The
> compilation of openmpi went fine.
> $ ../configure --enable-mpi-f90 --enable-mpi-f77 --enable-mpi-cxx
> --prefix=/home/research/pletzer/local/x86_64/openmpi-1.2.4/ FC=lfc
> F77=lfc FCFLAGS=-O2 FFLAGS=-O2 --disable-shared --enable-static
> However, when compiling a test code with mpif90, I get the following error:


> [pletzer_at_quartic test]$ mpif90 t.f90
> Encountered 0 errors, 0 warnings in file t.f90.
> /home/research/pletzer/local/x86_64/openmpi-1.2.4//lib/libopen-pal.a(lt1-malloc.o):
> In function `ptmalloc_init':
> malloc.c:(.text+0x4b71): undefined reference to `pthread_atfork'

Open MPI only supports statically linking an application when the
--without-memory-manager option is given to Open MPI's configure. You can
build Open MPI statically (ie, make a libmpi.a) without that option, but
you can not statically link an application (ie, use libc.a) without it.