[Llvm-bgq-discuss] multiple definitions of various builtin functions (isync mbar ppc_wait, etc)
Jeff Hammond
jhammond at alcf.anl.gov
Tue Oct 8 17:23:29 CDT 2013
i remember this garbage. i can't remember how i fixed it but i remember doing some stupid stuff like including that header that defines those functions in a single source file so only one object would have the symbols.
does LDFLAGS+="-Wl,--allow-multiple-definition" work as another solution?
jeff
----- Original Message -----
> From: "Rob Latham" <robl at mcs.anl.gov>
> To: llvm-bgq-discuss at lists.alcf.anl.gov
> Sent: Tuesday, October 8, 2013 2:55:48 PM
> Subject: [Llvm-bgq-discuss] multiple definitions of various builtin functions (isync mbar ppc_wait, etc)
>
> I'm trying to build mpich with clang . One does this on Blue Gene
> like this:
>
> http://wiki.mpich.org/mpich/index.php/BGQ
>
> /home/robl/src/mpich/configure
> CC=/home/projects/llvm/wbin/powerpc64-bgq-linux-clang \
> --host=powerpc64-bgq-linux --with-device=pamid \
> --with-file-system=bg+bglockless --enable-g=all \
> --prefix=/home/robl/soft/mpich-bgclang --disable-fortran
> --disable-cxx
>
> Plenty of fun new warnings to sort through, but that's what I
> expected
> to find.
>
> What I did not expect: 150,000 lines of stuff like this:
>
>
> src/mpi/attr/.libs/dup_fn.o: In function `isync':
> /home/robl/src/mpich/src/mpi/attr/dup_fn.c:(.opd+0x0): multiple
> definition of `isync'
> src/mpi/attr/.libs/attrutil.o:/home/robl/src/mpich/src/mpi/attr/attrutil.c:(.opd+0x0):
> first defined here
> src/mpi/attr/.libs/dup_fn.o: In function `ppc_msync':
> /home/robl/src/mpich/src/mpi/attr/dup_fn.c:(.opd+0x18): multiple
> definition of `ppc_msync'
> src/mpi/attr/.libs/attrutil.o:/home/robl/src/mpich/src/mpi/attr/attrutil.c:(.opd+0x18):
> first defined here
> src/mpi/attr/.libs/dup_fn.o: In function `mbar':
> /home/robl/src/mpich/src/mpi/attr/dup_fn.c:(.opd+0x30): multiple
> definition of `mbar'
> src/mpi/attr/.libs/attrutil.o:/home/robl/src/mpich/src/mpi/attr/attrutil.c:(.opd+0x30):
> first defined here
> src/mpi/attr/.libs/dup_fn.o: In function `ppc_wait':
> /home/robl/src/mpich/src/mpi/attr/dup_fn.c:(.opd+0x48): multiple
> definition of `ppc_wait'
> src/mpi/attr/.libs/attrutil.o:/home/robl/src/mpich/src/mpi/attr/attrutil.c:(.opd+0x48):
> first defined here
>
> Any ideas?
>
> ==rob
>
> --
> Rob Latham
> Mathematics and Computer Science Division
> Argonne National Lab, IL USA
> _______________________________________________
> llvm-bgq-discuss mailing list
> llvm-bgq-discuss at lists.alcf.anl.gov
> https://lists.alcf.anl.gov/mailman/listinfo/llvm-bgq-discuss
>
--
Jeff Hammond
Argonne Leadership Computing Facility
University of Chicago Computation Institute
jhammond at alcf.anl.gov / (630) 252-5381
http://www.linkedin.com/in/jeffhammond
https://wiki.alcf.anl.gov/parts/index.php/User:Jhammond
ALCF docs: http://www.alcf.anl.gov/user-guides
More information about the llvm-bgq-discuss
mailing list