The Objective C thing is not important. If you notice, it actually found gcc as the Objective C compiler (these days, most installs of GCC including the Objective C backend). The only code in Open MPI that uses Objective C is for OS X, but the way Autoconf works, it's easier to check for the Objective C compiler first, then look for the OS X bits we need. So that's not surprising or unexpected.

The failure you mentioned is because when Libtool tried to link the C++ bindings, it found libstdc++.a instead of libstdc++.so. Open MPI's C++ bindings are build as a shared library (not sure how MPICH builds them) and on x86_64 machines, you can't link a shared library against a static library that's not build with -fPIC (and most static libraries aren't). Do you have a libstdc++.so installed? It looks like it found libstdc++.a in:

  /usr/people/camm/kopposa1/gcc64/lib/../lib64/libstdc++.a

That's a little weird, as I wouldn't expect to find compiler libraries for the Intel compiler in your home directory. This might be the cause of the problem, although I'm not entirely sure how its finding that.

Brian


On Tue, 22 Apr 2008, kopp...@aim.com wrote:

Hi Jeff,

Yes. my C++ compiler works quite well. I have compiled and run a number
of programs with it. Further more, I could comfortably install mpich2
with this compiler with no problems.



What is surprising is : during configure ... I get:

......

=========================================================================
===

== Modular Component Architecture (MCA) setup

=========================================================================
===

checking for subdir args...
'--prefix=/usr/people/camm/kopposa1/openmpi' 'FC=ifort64' 'F77=ifort64'
'F95=ifort64' 'CC=icc64'

'CXX=icpc'

checking for gcc... gcc

checking whether we are using the GNU Objective C compiler... yes

checking whether gcc accepts -g... yes

.......



Intel C compiler is not a gnu objective C compiler. I don't know why
openmpi thinks that this is a GNU Compiler.



Thanks for your time,

Cheers,

Sampath.





From: Jeff Squyres (jsquyres_at_[hidden])

Date: 2008-04-22 08:05:16



Is your C++ compiler installer properly? Can you build and run other C

++ programs that use the STL?





-----Original Message-----

From: kopp...@aim.com

To: us...@open-mpi.org

Sent: Tue, 22 Apr 2008 11:01 am

Subject: Problems compiling OPENMPI !!



















Hello there,





I downloaded openmpi-1.2.5.tar and "un-tar"'ed it with tar -xvf

openmpi-1.2.5.tar which created a directory openmpi-1.2.5.









I then created a build directory and called





../openmpi-1.2.5/configure --prefix=$home/openmpi FC=ifort64

F77=ifort64 F95=ifort64 CC=icc64 CXX=icpc | & tee config.out









Everything went fine.





I then said : make -j 8 | & tee make.out and the compilation crashed

with:









/bin/sh ../../../libtool --tag=CXX   --mode=link icpc  -O3 -DNDEBUG

-finline-functions -pthread  -export-dynamic   -o libmpi_cxx.la -rpath

/usr/people/camm/kopposa1/openmpi/lib mpicxx.lo intercepts.lo comm.lo

datatype.lo file.lo win.lo  -lnsl -lutil





libtool: link: icpc -shared  .libs/mpicxx.o .libs/intercepts.o

.libs/comm.o .libs/datatype.o .libs/file.o .libs/win.o   -lnsl -lutil

-L/usr/prog/intel/cce/101015/lib

-L/usr/lib/gcc/x86_64-redhat-linux/3.4.6/

-L/usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../../lib64 -limf -lsvml

-lipgo /usr/people/camm/kopposa1/gcc64/lib/../lib64/libstdc++.a

-L/scratch/gcc/x86_64-unknown-linux-gnu/libstdc++-v3/src

-L/scratch/gcc/x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs

-L/scratch/gcc/./gcc -L/lib/../lib64 -L/usr/lib/../lib64 -lm -lgcc

-lintlc -lpthread -lgcc_s -lirc_s -ldl -lc  -pthread   -pthread

-Wl,-soname -Wl,libmpi_cxx.so.0 -o .libs/libmpi_cxx.so.0.0.0





ld:

/usr/people/camm/kopposa1/gcc64/lib/../lib64/libstdc++.a(ios_init.o):

relocation R_X86_64_32 against `pthread_cancel' can not be used when

making a shared object; recompile with -fPIC





/usr/people/camm/kopposa1/gcc64/lib/../lib64/libstdc++.a: could not

read symbols: Bad value





make[3]: *** [libmpi_cxx.la] Error 1





make[3]: Leaving directory `/scratch/openmpi/ompi/mpi/cxx'





make[2]: *** [all-recursive] Error 1





make[2]: Leaving directory `/scratch/openmpi/ompi/mpi'





make[1]: *** [all-recursive] Error 1





make[1]: Leaving directory `/scratch/openmpi/ompi'





make: *** [all-recursive] Error 1









FYI: I am attaching the zipped make.out and config.out files.









Thanks a lot for your help,





Cheers,





Sampath.









Sampath Koppole,





The Computational Molecular Biophysics Group,





Interdisciplinary Center for Scientific Computing (IWR),





368, Im Neuenheimer Feld,





Heidelberg. D-69120.





Germany.





Web Home : http://www.sampath.koppole.com

















_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users


Reply via email to