Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] trunk build failure on Altix [w/ WORK AROUND]
From: Paul H. Hargrove (PHHargrove_at_[hidden])
Date: 2012-02-17 18:26:10


I've poked enough at the ompi configure magic to *think* I understand
the source of the problem I've seen w/ both trunk and 1.5.x on the Altix.

The problem appears to be that both timer/altix/configure.m4 and
timer/linux/configure.m4 are setting the value of $timer_base_include
and the LAST one "wins". Meanwhile, only the FIRST one is getting added
to $static_components ("there can be only one"). So, I suspect the
difference I saw between trunk and 1.5 was just a matter of which
configure probe ran first.

The result of having FIRST and LAST "win" in different settings is a
mismatch.

> $ grep -e timer:linux -e timer:altix configure.out
> --- MCA component timer:linux (m4 configuration macro, priority 30)
> checking for MCA component timer:linux compile mode... static
> checking if MCA component timer:linux can compile... yes
> --- MCA component timer:altix (m4 configuration macro, priority 30)
> checking for MCA component timer:altix compile mode... static
> checking if MCA component timer:altix can compile... no

which picks timer:linux and rejects timer:altix, as compared to:

> $ grep -e '"MCA_opal_timer_[SD]' -e MCA_timer_ config.status
> S["MCA_opal_timer_DSO_SUBDIRS"]=""
> S["MCA_opal_timer_STATIC_SUBDIRS"]=" mca/timer/linux"
> S["MCA_opal_timer_STATIC_LTLIBS"]="mca/timer/linux/libmca_timer_linux.la "
> S["MCA_opal_timer_DSO_COMPONENTS"]=""
> S["MCA_opal_timer_STATIC_COMPONENTS"]=" linux"
> D["MCA_timer_IMPLEMENTATION_HEADER"]="
> \"opal/mca/timer/altix/timer_altix.h\""

Which will build timer:linux but has improperly picked up the
timer:altix HEADER!

For the present, an explicit --with-timer=altix works-around the problem
in either branch.
However, the setting of the header variable by a NON-selected component
is ERRONEOUS and should get fixed.
In trunk, it may also make sense to raise the priority of timer:altix
above that of timer:linux.

-Paul

On 2/15/2012 12:41 AM, Paul Hargrove wrote:
> I've configured the ompi trunk (nightly tarball 1.7a1r25927) on an SGI
> Altix.
> I used no special arguments indicating that this is an Altix, and
> there does not appear to be an altix-specific file in contrib/platform.
>
> My build fails as follows:
>
> make: Entering directory
> `/mnt/home/c_phargrov/OMPI/openmpi-trunk-linux-ia64/BLD/opal/tools/wrappers'
> CC opal_wrapper.o
> CCLD opal_wrapper
> ../../../opal/.libs/libopen-pal.so: undefined reference to
> `opal_timer_altix_mmdev_timer_addr'
> ../../../opal/.libs/libopen-pal.so: undefined reference to
> `opal_timer_altix_freq'
> collect2: ld returned 1 exit status
>
>
>
> The configure-generated opal_config.h contains
> #define MCA_timer_IMPLEMENTATION_HEADER
> "opal/mca/timer/altix/timer_altix.h"
>
> Nothing appears to have been built in BUILDDIR/opal/mca/timer/altix.
> However, BUILDDIR/opal/mca/timer/linux has been built.
>
> -Paul
>
> --
> Paul H. Hargrove PHHargrove_at_[hidden] <mailto:PHHargrove_at_[hidden]>
> Future Technologies Group
> HPC Research Department Tel: +1-510-495-2352
> <tel:%2B1-510-495-2352>
> Lawrence Berkeley National Laboratory Fax: +1-510-486-6900
> <tel:%2B1-510-486-6900>

-- 
Paul H. Hargrove                          PHHargrove_at_[hidden]
Future Technologies Group
HPC Research Department                   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900