Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] trunk build failed when configured with --disable-hwloc
From: Ralph Castain (rhc_at_[hidden])
Date: 2012-02-15 08:47:47


Built on Linux --without-hwloc as well, with the fix.

On Wed, Feb 15, 2012 at 3:13 AM, Ralph Castain <rhc_at_[hidden]> wrote:

> Hi Paul
>
> The rank_file component should not attempt to build if --without-hwloc is
> given - I've fixed that now. Thanks for reporting it.
>
> With that fix, I was able to build the trunk on Mac - testing Linux now. I
> haven't checked for the config.h confusion you report, though - just noting
> that it built.
>
>
> On Tue, Feb 14, 2012 at 5:42 PM, Paul H. Hargrove <PHHargrove_at_[hidden]>wrote:
>
>>
>>
>> On 2/14/2012 5:10 PM, Paul H. Hargrove wrote:
>>
>>> I have configured the ompi-trunk (from last night's tarball:
>>> 1.7a1r25913) with --without-hwloc.
>>> Having done so, I see the following failure at build time:
>>>
>>> CC rmaps_rank_file_component.lo
>>>> /home/hargrove/OMPI/openmpi-**trunk-linux-mips64el//openmpi-**
>>>> trunk/orte/mca/rmaps/rank_**file/rmaps_rank_file_compo
>>>> nent.c: In function 'orte_rmaps_rank_file_open':
>>>> /home/hargrove/OMPI/openmpi-**trunk-linux-mips64el//openmpi-**
>>>> trunk/orte/mca/rmaps/rank_**file/rmaps_rank_file_compo
>>>> nent.c:111: error: 'opal_hwloc_binding_policy' undeclared (first use in
>>>> this function)
>>>> /home/hargrove/OMPI/openmpi-**trunk-linux-mips64el//openmpi-**
>>>> trunk/orte/mca/rmaps/rank_**file/rmaps_rank_file_compo
>>>> nent.c:111: error: (Each undeclared identifier is reported only once
>>>> /home/hargrove/OMPI/openmpi-**trunk-linux-mips64el//openmpi-**
>>>> trunk/orte/mca/rmaps/rank_**file/rmaps_rank_file_compo
>>>> nent.c:111: error: for each function it appears in.)
>>>> /home/hargrove/OMPI/openmpi-**trunk-linux-mips64el//openmpi-**
>>>> trunk/orte/mca/rmaps/rank_**file/rmaps_rank_file_**component.c:111:
>>>> error: 'OPAL_BIND_TO_CPUSET' undeclared (first use in this function)
>>>>
>>>
>>> Looks like this code is not "aware" that hwloc has been configured out.
>>> This is not present in the 1.5 branch configured with identical
>>> arguments.
>>>
>>> -Paul
>>>
>>>
>> The following appears to "fix" that, but I am uncertain if this is the
>> desired fix.
>>
>>> --- orte/mca/rmaps/rank_file/**rmaps_rank_file_component.c~
>>> 2012-02-14 17:25:07.653483222 -0800
>>> +++ orte/mca/rmaps/rank_file/**rmaps_rank_file_component.c
>>> 2012-02-14 17:25:28.803483261 -0800
>>> @@ -107,8 +107,10 @@
>>> }
>>> ORTE_SET_MAPPING_POLICY(orte_**rmaps_base.mapping,
>>> ORTE_MAPPING_BYUSER);
>>> ORTE_SET_MAPPING_DIRECTIVE(**orte_rmaps_base.mapping,
>>> ORTE_MAPPING_GIVEN);
>>> +#if OPAL_HAVE_HWLOC
>>> /* we are going to bind to cpuset since the user is specifying
>>> the cpus */
>>> OPAL_SET_BINDING_POLICY(opal_**hwloc_binding_policy,
>>> OPAL_BIND_TO_CPUSET);
>>> +#endif
>>> /* make us first */
>>> my_priority = 10000;
>>> }
>>>
>>
>>
>> HOWEVER, I am now also seeing the following occurring ONLY when
>> configured with --disable-hwloc:
>>
>>> make[1]: Entering directory `/home/phargrov/openmpi-1.**
>>> 7a1r25913/BLD2/opal/mca/event/**libevent2013'
>>> CC libevent2013_module.lo
>>> ../../../../../opal/mca/event/**libevent2013/libevent2013_**module.c:7:20:
>>> error: config.h: No such file or directory
>>> ../../../../../opal/mca/event/**libevent2013/libevent2013_**module.c:
>>> In function 'opal_event_init':
>>> ../../../../../opal/mca/event/**libevent2013/libevent2013_**module.c:243:
>>> warning: ignoring return value of 'asprintf', declared with attribute
>>> warn_unused_result
>>> make[1]: *** [libevent2013_module.lo] Error 1
>>>
>>
>> It seems VERY odd to me that disabling hwloc should have that effect.
>> Looking deeper it appears that '#include "config.h"' in
>> libevent2013_module.c has been including the config.h from HWLOC, instead
>> of the one from libevent2013. If one examines the -I options carefully,
>> you will see that $(builddr)/libevent is NOT in the include path, but that
>> is the location of the config.h generated by libevent's configure script!
>>
>>
>> -Paul
>>
>> --
>> 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
>>
>> ______________________________**_________________
>> devel mailing list
>> devel_at_[hidden]
>> http://www.open-mpi.org/**mailman/listinfo.cgi/devel>
>>
>
>