Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

From: Brian Barrett (brbarret_at_[hidden])
Date: 2007-09-29 23:50:48

On Sep 29, 2007, at 5:15 PM, James Conway wrote:

> What I notice here is that despite my specification of the Intel
> compilers on the configure command line (including the correct c++
> icpc compiler!) the libtool command that fails seems to be using gcc
> (... --mode=link gcc ...) on the Xgrid sources. This is part of the
> Modular Component Architecture (MCA) setup (configure.out) and also
> uses gcc for the compiles:
> libtool: compile: gcc -DHAVE_CONFIG_H -I. -I../../../../opal/include
> -I../../../../orte/include -I../../../../ompi/include -I/Users/conway/
> programs/openMPI/openmpi-1.2.4/include -I../../../.. -D_REENTRANT -g -
> O2 -MT src/pls_xgrid_module.lo -MD -MP -MF src/.deps/
> pls_xgrid_module.Tpo -c src/pls_xgrid_module.m -fno-common -DPIC -o
> src/.libs/pls_xgrid_module.o
> I wouldn't expect this, but I can't say if it is intended or not.
> This particular error can be avoided by excluding xgrid:
> ./configure CC=icc CXX=icpc F77=ifort F90=ifort --without-xgrid

The XGrid PLS component is actually written in Objective C, as it
needs to use the XGrid Framework, which is in Objective C. While gcc
on OS X is both a C and Objective C compiler, icc is only a C
compiler. So gcc is being invoked as the Objective C compiler in
this case.

Unfortunately, libtool doesn't properly speak Objective C, so when
the C compiler and Objective C compiler are different, it can get
confused. We had a workaround for previous 1.2 releases, but with
1.2.4, we broke our workaround. A new, more stable workaround has
been committed and should be part of the 1.2.5 release.

In the meantime, disabling XGrid will obviously work around the issue.