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.
Brian