[mvapich-discuss] Building mvapich with GNU GCC 4.3 or higher.

Jonathan Perkins perkinjo at cse.ohio-state.edu
Fri Jun 19 11:01:54 EDT 2009


On Fri, Jun 19, 2009 at 10:43:42AM -0400, Jonathan Perkins wrote:
> On Fri, Jun 19, 2009 at 08:21:10AM -0600, Atencio, Jonathan Gerald wrote:
> > >________________________________________
> > >From: Jonathan Perkins [perkinjo at cse.ohio-state.edu]
> > >Sent: Friday, June 19, 2009 6:04 AM
> > >To: Atencio, Jonathan Gerald
> > >Cc: mvapich-discuss at cse.ohio-state.edu
> > >Subject: Re: [mvapich-discuss] Building mvapich with GNU GCC 4.3 or higher.
> > >
> > >On Thu, Jun 18, 2009 at 03:53:33PM -0600, Atencio, Jonathan Gerald wrote:
> > >> Hello Jonathan,
> > >>
> > >> I started from a clean mvapich 1.1 directory. Patched using c++.patch. Configured, notice that C++ bindings would be built. However, when I make, the first compile line errors out. Please see the following:
> > >>
> > >> % cd mvapich-1.1
> > >> % patch -p1 < c++.patch
> > >> patching file MPI-2-C++/contrib/examples/chapter_10_mpi2.cc
> > >> patching file MPI-2-C++/contrib/examples/hello_world.cc
> > >> patching file MPI-2-C++/contrib/examples/pi.cc
> > >> patching file MPI-2-C++/contrib/examples/ring.cc
> > >> patching file MPI-2-C++/contrib/examples/topology.cc
> > >> patching file MPI-2-C++/contrib/examples/user_bcast.cc
> > >> patching file MPI-2-C++/contrib/test_suite/cancel.cc
> > >> patching file MPI-2-C++/contrib/test_suite/errhandler.cc
> > >> patching file MPI-2-C++/contrib/test_suite/messages.cc
> > >> patching file MPI-2-C++/contrib/test_suite/mpi2c++_test.cc
> > >> patching file MPI-2-C++/contrib/test_suite/mpi2c++_test.h
> > >> patching file MPI-2-C++/contrib/test_suite/range.cc
> > >> patching file MPI-2-C++/contrib/test_suite/signal.cc
> > >> patching file configure
> > >> patching file configure.in
> > >> patching file examples/basic/hello++.cc
> > >> patching file examples/perftest/config/confdb/aclocal_cxx.m4
> > >> patching file examples/test/command/runtests.in
> > >> patching file installtest/hello++.cc
> > >> patching file src/cxx/test/basic.cxx
> > >> patching file src/cxx/test/errtest.cxx
> > >> patching file src/cxx/test/send1.cxx
> > >> % export CC=gcc CXX=g++ F77=gfortran F90=gfortran F77_GETARGDECL=" "
> > >> %  ./configure --with-device=ch_gen2 --with-arch=LINUX -prefix=/gscratch1/jgatenc/mpi/mvapich/1.1 --enable-romio --enable-f77 --enable-sharedlib --enable-cxx -lib="-L/usr/ofed/lib64 -libverbs -libumad -ldl" 2>&1 | tee ../mvapich-build
> > >> ...
> > >> checking whether selected C++ compiler can compile iostream... yes
> > >>
> > >> Include C++ bindings for MPI from http://www.osl.iu.edu/research/mpi2c++
> > >> Send bug reports about the C++ to mpi2cpp-devel at osl.iu.edu
> > >> ...
> > >> % make
> > >> ...
> > >> gcc -DHAVE_CONFIG_H -I. -I/gscratch1/jgatenc/mvapich-1.1/mpid/ch_gen2 -I/gscratch1/jgatenc/mvapich-1.1/include -I/gscratch1/jgatenc/mvapich-1.1/include -I/gscratch1/jgatenc/mvapich-1.1/mpid/ch_gen2 -I/gscratch1/jgatenc/mvapich-1.1/mpid/util -DMPID_DEVICE_CODE  -DHAVE_UNAME=1 -DHAVE_NETDB_H=1 -DHAVE_GETHOSTBYNAME=1  -DMPID_DEBUG_NONE -DMPID_STAT_NONE  -fPIC  -DHAVE_MPICHCONF_H -D_GNU_SOURCE -I/gscratch1/jgatenc/mvapich-1.1 -I/gscratch1/jgatenc/mvapich-1.1/mpid/ch_gen2 -I.    -c viainit.c
> > >> In file included from ibverbs_header.h:30,
> > >>                  from viapacket.h:40,
> > >>                  from req.h:48,
> > >>                  from mpid.h:226,
> > >>                  from viadev.h:30,
> > >>                  from viainit.c:52:
> > >> via64.h:51:2: error: #error Either _IA32_ or _IA64_ or _X86_64_ or _EM64T_ or _PPC64_ must be defined
> > >> via64.h:100:2: error: #error Either _IA32_ or _IA64_ or _X86_64_ or _EM64T_ or _PPC64_ must be defined.
> > >> In file included from viainit.c:57:
> > >> mpid_smpi.h:66:2: error: #error "No architecture defined !!"
> > >> In file included from viainit.c:57:
> > >> mpid_smpi.h:203: error: 'SMP_SEND_BUF_SIZE' undeclared here (not in a function)
> > >> make[3]: *** [viainit.o] Error 1
> > >> Exit status from make was 2
> > >> make[2]: *** [mpilib] Error 1
> > >> make[1]: *** [mpi-modules] Error 2
> > >> make: *** [mpi] Error 2
> > >
> > >It's weird that the architecture isn't defined.  I don't see any changes
> > >that would effect this detection and I'm a bit unsure why this didn't
> > >show up initially with the earlier version of the gnu compilers.  Can
> > >you check whether this patched version builds with the older compilers?
> > >
> > >Also, I'd like for you to send me the output of 'uname -a' and 'cat
> > >/proc/cpuinfo'.  Thanks.
> > >
> > 
> > I get the same error using gcc 4.1,2 now. 
> > 
> > % uname -a
> > Linux glory144 2.6.18-63chaos #1 SMP Fri Dec 19 15:37:16 EST 2008 x86_64 x86_64 x86_64 GNU/Linux
> > % cat /proc/cpu
> > processor       : 0
> > vendor_id       : AuthenticAMD
> > cpu family      : 16
> > model           : 2
> > model name      : Quad-Core AMD Opteron(tm) Processor 8354
> 
> Thanks for the information.  I'm about to try this out on a system with
> a more similar model name for its cpu.  I'll get back to you shortly.

The patched build works fine for me on an identical system (as far as
the arch function in make.mvapich.def is concerned).  Are you running
make.mvapich.gen2 or trying the commands manually?  There are some
CFLAGS that are set by our build scripts that don't look to be set from
your output above.

-- 
Jonathan Perkins
http://www.cse.ohio-state.edu/~perkinjo
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
Url : http://mail.cse.ohio-state.edu/pipermail/mvapich-discuss/attachments/20090619/f446664a/attachment-0001.bin


More information about the mvapich-discuss mailing list