Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.

error when building open-mpi 1.4.5

Majid_Z_
Beginner
566 Views

Hi all intel developers and user

I have Parallel studio 2013 XE on ubuntu 13.10

I configure openmpi 1.4.5 with this code :

./configure --prefix=/usr/local/openmpi-1.4.5 CC=icc FC=ifort F77=ifort

It's OK. but when I make with make -j4 I see this error;

.libs/mpicxx.o: In function `_GLOBAL__sub_I_mpicxx.cc':
mpicxx.cc:(.text.startup+0x24): undefined reference to `__dso_handle'
/usr/bin/ld: .libs/mpicxx.o: relocation R_X86_64_PC32 against undefined hidden symbol `__dso_handle' can not be used when making a shared object
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
make[2]: *** [libmpi_cxx.la] Error 1
make[2]: Leaving directory `/home/majid/Apps/openmpi-1.4.5/ompi/mpi/cxx'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/majid/Apps/openmpi-1.4.5/ompi'
make: *** [all-recursive] Error 1

Please help me to fix this error.

Thank you so much

Majid

0 Kudos
1 Solution
TimP
Honored Contributor III
566 Views

Is this the result of failing to specify CXX=icpc ?

You must follow the openmpi build instructions; of course, they will recommend using a current version of their source code.  I suppose your OS may have quirks which could be new since this openmpi version was produced. It may also help to update your Intel parallel studio, since your Ubuntu was released subsequent to development of 2013 xe.

If you are looking for an option to build without C++ support, so as to avoid requirement for up to date icpc, their FAQ would be a better reference than this forum.

It's feasible to build MPI with ifort and gcc/g++ and still use icc for your application.  You appear to have found it's not a good idea to attempt to build mpi with a combination of g++ and icc.

View solution in original post

0 Kudos
1 Reply
TimP
Honored Contributor III
567 Views

Is this the result of failing to specify CXX=icpc ?

You must follow the openmpi build instructions; of course, they will recommend using a current version of their source code.  I suppose your OS may have quirks which could be new since this openmpi version was produced. It may also help to update your Intel parallel studio, since your Ubuntu was released subsequent to development of 2013 xe.

If you are looking for an option to build without C++ support, so as to avoid requirement for up to date icpc, their FAQ would be a better reference than this forum.

It's feasible to build MPI with ifort and gcc/g++ and still use icc for your application.  You appear to have found it's not a good idea to attempt to build mpi with a combination of g++ and icc.

0 Kudos
Reply