[mpich-discuss] MPICH 3.1rc2 build error on Darwin.

Kenneth Raffenetti raffenet at mcs.anl.gov
Mon Jan 13 22:26:17 CST 2014


There should already be a fix for this in the latest master branch in 
git. It will be included in rc3, but you can try building from git if 
you'd like.

Ken

On 01/13/2014 10:12 PM, Salmon, Rene wrote:
>
> Thanks for the replies. Here is a bit more info.  I tried this with both mpich 3.1rc2 and mpich 3.0.4
>
> mpich 3.1rc2
> ============
> This seems to compile with out any error messages using gcc.
> ./configure CC=gcc CXX=g++ F77=gfortran FC=gfortran --prefix=/opt/ilocal/ --enable-fc
> make
>
> mpich 3.1rc2
> =========
> This fails. I have the output of make V=1 at the end of this email.
> ./configure CC=icc CXX=icpc F77=ifort FC=ifort --prefix=/opt/ilocal/ --enable-fc
> make
>
>
> mpich 3.0.4
> ===========
> This seems to work with mpich 3.0.4. No error messages.
> ./configure CC=icc CXX=icpc F77=ifort FC=ifort --prefix=/opt/ilocal/ --enable-fc
> make
>
>
>
> Here is the output to make V=1 for mpich 3.2rc2 using intel compilers.
> ================================
>
> In file included from ../src/include/mpi.h(2145),
>                   from cpi.c(7):
> ../src/include/mpio.h(227): warning #1787: alias definitions not supported on this platform; attribute ignored
>    int MPI_File_get_atomicity(MPI_File fh, int *flag) MPICH_ATTR_WEAK_ALIAS("PMPI_File_get_atomicity");
>                                                       ^
>
> In file included from ../src/include/mpi.h(2145),
>                   from cpi.c(7):
> ../src/include/mpio.h(228): warning #1787: alias definitions not supported on this platform; attribute ignored
>    int MPI_File_sync(MPI_File fh) MPICH_ATTR_WEAK_ALIAS("PMPI_File_sync");
>                                   ^
>
> In file included from ../src/include/mpi.h(2145),
>                   from cpi.c(7):
> ../src/include/mpio.h(264): warning #1787: alias definitions not supported on this platform; attribute ignored
>    MPI_File MPI_File_f2c(MPI_Fint file) MPICH_ATTR_WEAK_ALIAS("PMPI_File_f2c");
>                                         ^
>
> In file included from ../src/include/mpi.h(2145),
>                   from cpi.c(7):
> ../src/include/mpio.h(265): warning #1787: alias definitions not supported on this platform; attribute ignored
>    MPI_Fint MPI_File_c2f(MPI_File file) MPICH_ATTR_WEAK_ALIAS("PMPI_File_c2f");
>                                         ^
>
> /bin/sh ../libtool  --tag=CC   --mode=link icc  -O2 -L../lib -L/opt/ilocal/src/mpich-3.1rc2/src/mpl -L/opt/ilocal/src/mpich-3.1rc2/src/openpa/src -Wl,-flat_namespace -static -Wl,-flat_namespace -o cpi cpi.o -lm -lpthread    -lmpich -lmpl -lopa -lopa -lmpl  -lpthread
> libtool: link: icc -O2 -Wl,-flat_namespace -Wl,-flat_namespace -o cpi cpi.o  -L../lib -L/opt/ilocal/src/mpich-3.1rc2/src/mpl -L/opt/ilocal/src/mpich-3.1rc2/src/openpa/src -lm /opt/ilocal/src/mpich-3.1rc2/lib/.libs/libmpich.a /opt/ilocal/src/mpich-3.1rc2/src/openpa/src/.libs/libopa.a /opt/ilocal/src/mpich-3.1rc2/src/mpl/.libs/libmpl.a -lpthread
> Undefined symbols for architecture x86_64:
>    "_MPI_Bcast", referenced from:
>        _main in cpi.o
>    "_MPI_Comm_rank", referenced from:
>        _main in cpi.o
>    "_MPI_Comm_size", referenced from:
>        _main in cpi.o
>    "_MPI_Finalize", referenced from:
>        _main in cpi.o
>    "_MPI_Get_processor_name", referenced from:
>        _main in cpi.o
>    "_MPI_Init", referenced from:
>        _main in cpi.o
>    "_MPI_Reduce", referenced from:
>        _main in cpi.o
>    "_MPI_Wtime", referenced from:
>        _main in cpi.o
> ld: symbol(s) not found for architecture x86_64
> make[2]: *** [cpi] Error 1
> make[1]: *** [all-recursive] Error 1
> make: *** [all] Error 2
>
>
>
>
>
>
>
> -----Original Message-----
> From: discuss-bounces at mpich.org on behalf of Eric A. Borisch
> Sent: Mon 1/13/2014 12:39 AM
> To: discuss at mpich.org
> Subject: [mpich-discuss]  MPICH 3.1rc2 build error on Darwin.
>
> He's building with icc/ifort, so it's not being done via MacPorts. I don't think he even needs MP or Homebrew installed to build MPICH, just Intel's tools (and Xcode).
>
> Building with 'make V=1' (or configuring with --disable-silent-rules) will provide more insight into what is going on. If you do have MP or Homebrew installed, you can rule out most interaction by removing their locations (/opt/local/bin, or /usr/local/bin, respectively) from PATH.
>
> Jeff, I'm sorry to year you were unhappy with the (MP) tools. FWIW, it's been reworked to have a standardized MPICH version (with GCC's Fortan and the system's default C compiler) that is installed for use by any (macports-built) package that needs it.
>
> Thanks,
>    - Eric
>
> On Sunday, January 12, 2014, Jeff Hammond wrote:
>
>
>          Might be the MacPorts garbage that bit me a while back too. If GCC fails, I suggest wiping MacPorts and installing Homebrew and the associated toolchain.
>
>          Jeff
>
>          Sent from my iPhone
>
>          > On Jan 12, 2014, at 7:58 PM, Rajeev Thakur <thakur at mcs.anl.gov> wrote:
>          >
>          > It sounds like a 32-bit, 64-bit incompatibility between some installed compilers/linker. Are you able to build with gcc?
>          >
>          >
>          >> On Jan 10, 2014, at 3:09 PM, "Salmon, Rene" <salmr0 at bp.com> wrote:
>          >>
>          >>
>          >> Hi,
>          >>
>          >> Just trying to build MPICH 3.1rc2 on a Mac. The build seems to work but fails while trying to compile the examples. This is using the intel compilers.
>          >>
>          >> ifort,icc version 14.0.0.074
>          >>
>          >> Here is the config line.
>          >> ./configure CC=icc CXX=icpc F77=ifort FC=ifort   --enable-fc
>          >>
>          >>
>          >> error message.
>          >>
>          >> make[4]: Nothing to be done for `all'.
>          >> make[4]: Nothing to be done for `all-am'.
>          >> Making all in .
>          >> Making all in .
>          >> Making all in examples
>          >> CCLD     cpi
>          >> Undefined symbols for architecture x86_64:
>          >> "_MPI_Bcast", referenced from:
>          >>     _main in cpi.o
>          >> "_MPI_Comm_rank", referenced from:
>          >>     _main in cpi.o
>          >> "_MPI_Comm_size", referenced from:
>          >>     _main in cpi.o
>          >> "_MPI_Finalize", referenced from:
>          >>     _main in cpi.o
>          >> "_MPI_Get_processor_name", referenced from:
>          >>     _main in cpi.o
>          >> "_MPI_Init", referenced from:
>          >>     _main in cpi.o
>          >> "_MPI_Reduce", referenced from:
>          >>     _main in cpi.o
>          >> "_MPI_Wtime", referenced from:
>          >>     _main in cpi.o
>          >> ld: symbol(s) not found for architecture x86_64
>          >> make[2]: *** [cpi] Error 1
>          >> make[1]: *** [all-recursive] Error 1
>          >> make: *** [all] Error 2
>          >>
>          >> Thank you.
>          >>
>          >> Rene
>          >> _______________________________________________
>          >> discuss mailing list     discuss at mpich.org
>          >> To manage subscription options or unsubscribe:
>          >> https://lists.mpich.org/mailman/listinfo/discuss
>          >
>          > _______________________________________________
>          > discuss mailing list     discuss at mpich.org
>          > To manage subscription options or unsubscribe:
>          > https://lists.mpich.org/mailman/listinfo/discuss
>          _______________________________________________
>          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