LAM/MPI logo

LAM/MPI General User's Mailing List Archives

  |   Home   |   Download   |   Documentation   |   FAQ   |   all just in this list

From: Didier Lucor (didier_at_[hidden])
Date: 2006-05-10 08:15:35


> Hello,
>
> I'm using the latest LAM-MPI 7.1.2 (Mac OS X Package:
> lam-7.1.2.dmg.gz) on my G5 (OS 10.4.6; Dual 2.3 GHz PowerPC) and
> I'm trying to run the LAM 7.1.2 test suite.
>
> After the "configure" step, I have a problem when I compile the
> test, before to actually running it.
>
> While compiling the "comm" module, it seems that there is a
> multiple definitions of symbol __cxa_atexit that causes conflict
> during the linking. At this point it won't generate the executables
> and just stops compiliing.
>
> I've attached the outputs of laminfo, lamnodes, configure and the
> make commands below.
>
> Any idea?
> Thanks for your help.
>
> -Didier
>
> > lamnodes
> n0 localhost:2:origin,this_node
>
> > laminfo
> LAM/MPI: 7.1.2
> Prefix: /usr/local
> Architecture: i386-apple-darwin8.5.1
> Configured by: brbarret
> Configured on: Sat Mar 11 11:46:01 EST 2006
> Configure host: zaphod.osl.iu.edu
> Memory manager: darwin7malloc
> C bindings: yes
> C++ bindings: yes
> Fortran bindings: no
> C compiler: gcc
> C++ compiler: g++
> Fortran compiler: false
> Fortran symbols: none
> C profiling: yes
> C++ profiling: yes
> Fortran profiling: no
> C++ exceptions: no
> Thread support: yes
> ROMIO support: yes
> IMPI support: no
> Debug support: no
> Purify clean: no
> SSI boot: globus (API v1.1, Module v0.6)
> SSI boot: rsh (API v1.1, Module v1.1)
> SSI boot: slurm (API v1.1, Module v1.0)
> SSI coll: lam_basic (API v1.1, Module v7.1)
> SSI coll: shmem (API v1.1, Module v1.0)
> SSI coll: smp (API v1.1, Module v1.2)
> SSI rpi: crtcp (API v1.1, Module v1.1)
> SSI rpi: lamd (API v1.0, Module v7.1)
> SSI rpi: sysv (API v1.0, Module v7.1)
> SSI rpi: tcp (API v1.0, Module v7.1)
> SSI rpi: usysv (API v1.0, Module v7.1)
> SSI cr: self (API v1.0, Module v1.0)
>
>
> >./configure
> Configuring LAM test suite version 7.1.2
> checking for a BSD-compatible install... /usr/bin/install -c
> checking whether build environment is sane... yes
> checking for gawk... no
> checking for mawk... no
> checking for nawk... no
> checking for awk... awk
> checking whether make sets $(MAKE)... yes
> checking build system type... powerpc-apple-darwin8.6.0
> checking host system type... powerpc-apple-darwin8.6.0
> checking for mpicc... yes
> checking for gcc... mpicc
> checking for C compiler default output file name... a.out
> checking whether the C compiler works... yes
> checking whether we are cross compiling... no
> checking for suffix of executables...
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether mpicc accepts -g... yes
> checking for mpicc option to accept ANSI C... none needed
> checking for style of include used by make... GNU
> checking dependency style of mpicc... gcc3
> checking for mpic++... yes
> checking whether we are using the GNU C++ compiler... yes
> checking whether mpic++ accepts -g... yes
> checking dependency style of mpic++... gcc3
> checking for mpif77... yes
> checking whether we are using the GNU Fortran 77 compiler... no
> checking whether mpif77 accepts -g... no
> checking for ranlib... ranlib
> checking for mpi.h... yes
> checking for MPI_Initialized in -lmpi... yes
> checking if have Fortran MPI bindings... no
> checking if supposed to have Fortran MPI bindings... no
> checking if have MPI-2 C++ support... yes
> checking if have MPI-2 IO support... yes
> checking if using LAM/MPI... yes
> checking for LAM/Trillium... no
> checking if have uniform filesystem... no
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating config/runtests.sh
> config.status: creating config/Makefile
> config.status: creating reporting/Makefile
> config.status: creating ccl/Makefile
> config.status: creating ccl/intercomm/Makefile
> config.status: creating comm/Makefile
> config.status: creating dtyp/Makefile
> config.status: creating dynamic/Makefile
> config.status: creating env/Makefile
> config.status: creating group/Makefile
> config.status: creating info/Makefile
> config.status: creating io/Makefile
> config.status: creating lam/Makefile
> config.status: creating lam/basic/Makefile
> config.status: creating lam/ccl/Makefile
> config.status: creating lam/dynamic/Makefile
> config.status: creating lam/env/Makefile
> config.status: creating onesided/Makefile
> config.status: creating pt2pt/Makefile
> config.status: creating topo/Makefile
> config.status: creating reporting/lamtest_config.h
> config.status: executing depfiles commands
> config.status: executing default commands
>
>
> > make all |& tee make.log
> Making all in reporting
> make all-am
> if mpicc -DHAVE_CONFIG_H -I. -I. -I. -MT lamtest_progress.o -
> MD -MP -MF ".deps/lamtest_progress.Tpo" -c -o lamtest_progress.o
> lamtest_progress.c; \
> then mv -f ".deps/lamtest_progress.Tpo" ".deps/
> lamtest_progress.Po"; else rm -f ".deps/lamtest_progress.Tpo"; exit
> 1; fi
> if mpicc -DHAVE_CONFIG_H -I. -I. -I. -MT lamtest_error.o -MD -
> MP -MF ".deps/lamtest_error.Tpo" -c -o lamtest_error.o
> lamtest_error.c; \
> then mv -f ".deps/lamtest_error.Tpo" ".deps/lamtest_error.Po"; else
> rm -f ".deps/lamtest_error.Tpo"; exit 1; fi
> if mpicc -DHAVE_CONFIG_H -I. -I. -I. -MT
> lamtest_error_nonmpi.o -MD -MP -MF ".deps/lamtest_error_nonmpi.Tpo"
> -c -o lamtest_error_nonmpi.o lamtest_error_nonmpi.c; \
> then mv -f ".deps/lamtest_error_nonmpi.Tpo" ".deps/
> lamtest_error_nonmpi.Po"; else rm -f ".deps/
> lamtest_error_nonmpi.Tpo"; exit 1; fi
> rm -f liblamtest.a
> ar cru liblamtest.a lamtest_progress.o lamtest_error.o
> lamtest_error_nonmpi.o
> ranlib liblamtest.a
> Making all in ccl
> Making all in intercomm
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> allgather_inter.o -MD -MP -MF ".deps/allgather_inter.Tpo" -c -o
> allgather_inter.o allgather_inter.c; \
> then mv -f ".deps/allgather_inter.Tpo" ".deps/allgather_inter.Po";
> else rm -f ".deps/allgather_inter.Tpo"; exit 1; fi
> mpicc -o allgather_inter allgather_inter.o -L../../reporting -
> llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> allreduce_inter.o -MD -MP -MF ".deps/allreduce_inter.Tpo" -c -o
> allreduce_inter.o allreduce_inter.c; \
> then mv -f ".deps/allreduce_inter.Tpo" ".deps/allreduce_inter.Po";
> else rm -f ".deps/allreduce_inter.Tpo"; exit 1; fi
> mpicc -o allreduce_inter allreduce_inter.o -L../../reporting -
> llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> alltoall_inter.o -MD -MP -MF ".deps/alltoall_inter.Tpo" -c -o
> alltoall_inter.o alltoall_inter.c; \
> then mv -f ".deps/alltoall_inter.Tpo" ".deps/alltoall_inter.Po";
> else rm -f ".deps/alltoall_inter.Tpo"; exit 1; fi
> mpicc -o alltoall_inter alltoall_inter.o -L../../reporting -
> llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> alltoallv_inter.o -MD -MP -MF ".deps/alltoallv_inter.Tpo" -c -o
> alltoallv_inter.o alltoallv_inter.c; \
> then mv -f ".deps/alltoallv_inter.Tpo" ".deps/alltoallv_inter.Po";
> else rm -f ".deps/alltoallv_inter.Tpo"; exit 1; fi
> mpicc -o alltoallv_inter alltoallv_inter.o -L../../reporting -
> llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> alltoallw_inter.o -MD -MP -MF ".deps/alltoallw_inter.Tpo" -c -o
> alltoallw_inter.o alltoallw_inter.c; \
> then mv -f ".deps/alltoallw_inter.Tpo" ".deps/alltoallw_inter.Po";
> else rm -f ".deps/alltoallw_inter.Tpo"; exit 1; fi
> mpicc -o alltoallw_inter alltoallw_inter.o -L../../reporting -
> llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> barrier_inter.o -MD -MP -MF ".deps/barrier_inter.Tpo" -c -o
> barrier_inter.o barrier_inter.c; \
> then mv -f ".deps/barrier_inter.Tpo" ".deps/barrier_inter.Po"; else
> rm -f ".deps/barrier_inter.Tpo"; exit 1; fi
> mpicc -o barrier_inter barrier_inter.o -L../../reporting -
> llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> bcast_inter.o -MD -MP -MF ".deps/bcast_inter.Tpo" -c -o
> bcast_inter.o bcast_inter.c; \
> then mv -f ".deps/bcast_inter.Tpo" ".deps/bcast_inter.Po"; else rm -
> f ".deps/bcast_inter.Tpo"; exit 1; fi
> mpicc -o bcast_inter bcast_inter.o -L../../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> gather_inter.o -MD -MP -MF ".deps/gather_inter.Tpo" -c -o
> gather_inter.o gather_inter.c; \
> then mv -f ".deps/gather_inter.Tpo" ".deps/gather_inter.Po"; else
> rm -f ".deps/gather_inter.Tpo"; exit 1; fi
> mpicc -o gather_inter gather_inter.o -L../../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> reduce_inter.o -MD -MP -MF ".deps/reduce_inter.Tpo" -c -o
> reduce_inter.o reduce_inter.c; \
> then mv -f ".deps/reduce_inter.Tpo" ".deps/reduce_inter.Po"; else
> rm -f ".deps/reduce_inter.Tpo"; exit 1; fi
> mpicc -o reduce_inter reduce_inter.o -L../../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> reduce_scatter_inter.o -MD -MP -MF ".deps/reduce_scatter_inter.Tpo"
> -c -o reduce_scatter_inter.o reduce_scatter_inter.c; \
> then mv -f ".deps/reduce_scatter_inter.Tpo" ".deps/
> reduce_scatter_inter.Po"; else rm -f ".deps/
> reduce_scatter_inter.Tpo"; exit 1; fi
> mpicc -o reduce_scatter_inter reduce_scatter_inter.o -L../../
> reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> scatter_inter.o -MD -MP -MF ".deps/scatter_inter.Tpo" -c -o
> scatter_inter.o scatter_inter.c; \
> then mv -f ".deps/scatter_inter.Tpo" ".deps/scatter_inter.Po"; else
> rm -f ".deps/scatter_inter.Tpo"; exit 1; fi
> mpicc -o scatter_inter scatter_inter.o -L../../reporting -
> llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../../reporting -MT
> scatterv_inter.o -MD -MP -MF ".deps/scatterv_inter.Tpo" -c -o
> scatterv_inter.o scatterv_inter.c; \
> then mv -f ".deps/scatterv_inter.Tpo" ".deps/scatterv_inter.Po";
> else rm -f ".deps/scatterv_inter.Tpo"; exit 1; fi
> mpicc -o scatterv_inter scatterv_inter.o -L../../reporting -
> llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT
> allgather.o -MD -MP -MF ".deps/allgather.Tpo" -c -o allgather.o
> allgather.c; \
> then mv -f ".deps/allgather.Tpo" ".deps/allgather.Po"; else rm -f
> ".deps/allgather.Tpo"; exit 1; fi
> mpicc -o allgather allgather.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT
> allgatherv.o -MD -MP -MF ".deps/allgatherv.Tpo" -c -o allgatherv.o
> allgatherv.c; \
> then mv -f ".deps/allgatherv.Tpo" ".deps/allgatherv.Po"; else rm -f
> ".deps/allgatherv.Tpo"; exit 1; fi
> mpicc -o allgatherv allgatherv.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT
> allreduce.o -MD -MP -MF ".deps/allreduce.Tpo" -c -o allreduce.o
> allreduce.c; \
> then mv -f ".deps/allreduce.Tpo" ".deps/allreduce.Po"; else rm -f
> ".deps/allreduce.Tpo"; exit 1; fi
> mpicc -o allreduce allreduce.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT alltoall.o
> -MD -MP -MF ".deps/alltoall.Tpo" -c -o alltoall.o alltoall.c; \
> then mv -f ".deps/alltoall.Tpo" ".deps/alltoall.Po"; else rm -f
> ".deps/alltoall.Tpo"; exit 1; fi
> mpicc -o alltoall alltoall.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT
> alltoallw.o -MD -MP -MF ".deps/alltoallw.Tpo" -c -o alltoallw.o
> alltoallw.c; \
> then mv -f ".deps/alltoallw.Tpo" ".deps/alltoallw.Po"; else rm -f
> ".deps/alltoallw.Tpo"; exit 1; fi
> mpicc -o alltoallw alltoallw.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT barrier.o -
> MD -MP -MF ".deps/barrier.Tpo" -c -o barrier.o barrier.c; \
> then mv -f ".deps/barrier.Tpo" ".deps/barrier.Po"; else rm -f
> ".deps/barrier.Tpo"; exit 1; fi
> mpicc -o barrier barrier.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT bcast.o -
> MD -MP -MF ".deps/bcast.Tpo" -c -o bcast.o bcast.c; \
> then mv -f ".deps/bcast.Tpo" ".deps/bcast.Po"; else rm -f ".deps/
> bcast.Tpo"; exit 1; fi
> mpicc -o bcast bcast.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT
> bcast_struct.o -MD -MP -MF ".deps/bcast_struct.Tpo" -c -o
> bcast_struct.o bcast_struct.c; \
> then mv -f ".deps/bcast_struct.Tpo" ".deps/bcast_struct.Po"; else
> rm -f ".deps/bcast_struct.Tpo"; exit 1; fi
> mpicc -o bcast_struct bcast_struct.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT exscan.o -
> MD -MP -MF ".deps/exscan.Tpo" -c -o exscan.o exscan.c; \
> then mv -f ".deps/exscan.Tpo" ".deps/exscan.Po"; else rm -f ".deps/
> exscan.Tpo"; exit 1; fi
> mpicc -o exscan exscan.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT gather.o -
> MD -MP -MF ".deps/gather.Tpo" -c -o gather.o gather.c; \
> then mv -f ".deps/gather.Tpo" ".deps/gather.Po"; else rm -f ".deps/
> gather.Tpo"; exit 1; fi
> mpicc -o gather gather.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT op.o -MD -
> MP -MF ".deps/op.Tpo" -c -o op.o op.c; \
> then mv -f ".deps/op.Tpo" ".deps/op.Po"; else rm -f ".deps/op.Tpo";
> exit 1; fi
> mpicc -o op op.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT reduce.o -
> MD -MP -MF ".deps/reduce.Tpo" -c -o reduce.o reduce.c; \
> then mv -f ".deps/reduce.Tpo" ".deps/reduce.Po"; else rm -f ".deps/
> reduce.Tpo"; exit 1; fi
> mpicc -o reduce reduce.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT
> reduce_scatter.o -MD -MP -MF ".deps/reduce_scatter.Tpo" -c -o
> reduce_scatter.o reduce_scatter.c; \
> then mv -f ".deps/reduce_scatter.Tpo" ".deps/reduce_scatter.Po";
> else rm -f ".deps/reduce_scatter.Tpo"; exit 1; fi
> mpicc -o reduce_scatter reduce_scatter.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT scan.o -MD
> -MP -MF ".deps/scan.Tpo" -c -o scan.o scan.c; \
> then mv -f ".deps/scan.Tpo" ".deps/scan.Po"; else rm -f ".deps/
> scan.Tpo"; exit 1; fi
> mpicc -o scan scan.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT scatter.o -
> MD -MP -MF ".deps/scatter.Tpo" -c -o scatter.o scatter.c; \
> then mv -f ".deps/scatter.Tpo" ".deps/scatter.Po"; else rm -f
> ".deps/scatter.Tpo"; exit 1; fi
> mpicc -o scatter scatter.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT
> struct_gatherv.o -MD -MP -MF ".deps/struct_gatherv.Tpo" -c -o
> struct_gatherv.o struct_gatherv.c; \
> then mv -f ".deps/struct_gatherv.Tpo" ".deps/struct_gatherv.Po";
> else rm -f ".deps/struct_gatherv.Tpo"; exit 1; fi
> mpicc -o struct_gatherv struct_gatherv.o -L../reporting -llamtest
> Making all in comm
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT attr.o -MD
> -MP -MF ".deps/attr.Tpo" -c -o attr.o attr.c; \
> then mv -f ".deps/attr.Tpo" ".deps/attr.Po"; else rm -f ".deps/
> attr.Tpo"; exit 1; fi
> mpicc -o attr attr.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT commdup.o -
> MD -MP -MF ".deps/commdup.Tpo" -c -o commdup.o commdup.c; \
> then mv -f ".deps/commdup.Tpo" ".deps/commdup.Po"; else rm -f
> ".deps/commdup.Tpo"; exit 1; fi
> mpicc -o commdup commdup.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT commfree.o
> -MD -MP -MF ".deps/commfree.Tpo" -c -o commfree.o commfree.c; \
> then mv -f ".deps/commfree.Tpo" ".deps/commfree.Po"; else rm -f
> ".deps/commfree.Tpo"; exit 1; fi
> mpicc -o commfree commfree.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT compare.o -
> MD -MP -MF ".deps/compare.Tpo" -c -o compare.o compare.c; \
> then mv -f ".deps/compare.Tpo" ".deps/compare.Po"; else rm -f
> ".deps/compare.Tpo"; exit 1; fi
> mpicc -o compare compare.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT
> intercomm.o -MD -MP -MF ".deps/intercomm.Tpo" -c -o intercomm.o
> intercomm.c; \
> then mv -f ".deps/intercomm.Tpo" ".deps/intercomm.Po"; else rm -f
> ".deps/intercomm.Tpo"; exit 1; fi
> mpicc -o intercomm intercomm.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT mpisplit.o
> -MD -MP -MF ".deps/mpisplit.Tpo" -c -o mpisplit.o mpisplit.c; \
> then mv -f ".deps/mpisplit.Tpo" ".deps/mpisplit.Po"; else rm -f
> ".deps/mpisplit.Tpo"; exit 1; fi
> mpicc -o mpisplit mpisplit.o -L../reporting -llamtest
> if mpicc -DHAVE_CONFIG_H -I. -I. -I../reporting -MT
> self_atexit.o -MD -MP -MF ".deps/self_atexit.Tpo" -c -o
> self_atexit.o self_atexit.c; \
> then mv -f ".deps/self_atexit.Tpo" ".deps/self_atexit.Po"; else rm -
> f ".deps/self_atexit.Tpo"; exit 1; fi
> mpicc -o self_atexit self_atexit.o -L../reporting -llamtest
> if mpic++ -DHAVE_CONFIG_H -I. -I. -I../reporting -MT
> comm_get_name_cxx.o -MD -MP -MF ".deps/comm_get_name_cxx.Tpo" -c -o
> comm_get_name_cxx.o comm_get_name_cxx.cc; \
> then mv -f ".deps/comm_get_name_cxx.Tpo" ".deps/
> comm_get_name_cxx.Po"; else rm -f ".deps/comm_get_name_cxx.Tpo";
> exit 1; fi
> mpic++ -o comm_get_name_cxx comm_get_name_cxx.o -L../reporting
> -llamtest
> /usr/bin/ld: multiple definitions of symbol ___cxa_atexit
> /usr/local/lib/gcc/powerpc-apple-darwin8.6.0/4.2.0/crt3.o private
> external definition of ___cxa_atexit in section (__TEXT,__text)
> /usr/lib/libdl.dylib(atexit.So) definition of ___cxa_atexit
> collect2: ld returned 1 exit status
> mpic++: No such file or directory
> make[1]: *** [comm_get_name_cxx] Error 1
> make: *** [all-recursive] Error 1
>
>
>