Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

configuration: OMPI v2.x with external hwloc from the distro #2946

Closed
artpol84 opened this issue Feb 9, 2017 · 3 comments
Closed

configuration: OMPI v2.x with external hwloc from the distro #2946

artpol84 opened this issue Feb 9, 2017 · 3 comments

Comments

@artpol84
Copy link
Contributor

artpol84 commented Feb 9, 2017

@dannyauble reported the problem with OMPI configuration.

In the target environment hwloc 1.11.3-2 was installed from the distro package in the default location in /usr/

For the case where we configured without parameters:

./configure ... --with-hwloc ...

not all hwloc paths was properly set and compilation failed.
@dannyauble noticed that MCA_hwloc_external_header was:

#define MCA_hwloc_external_header "hwloc.h"

instead of

#define MCA_hwloc_external_header "/usr/include/hwloc.h"

Problem can be solved by setting full path to hwloc at config time:

./configure ... --with-hwloc=/usr/ ...
@jsquyres
Copy link
Member

jsquyres commented Feb 9, 2017

This is likely related to #2616.

@ggouaillardet
Copy link
Contributor

@artpol84 basically, the issue is we have a hwloc.h file in opal/mca/hwloc/hwloc.h and we automatically add -Iopal/mca/hwloc in the CPPFLAGS.
bottom line, if we want the external hwloc.h, we cannot simply

#include <hwloc.h>

but we have to

#include "/usr/include/hwloc.h"

(well, we do that via the ```MCA_hwloc_external_header" macro)

since the MCA framework is called hwloc, then the header file must be named hwloc.h.
imho, in order to correctly address this issue, the easiest way is to rename the hwloc framework
(hwtopo ?). unfortunatly, this is also the longest path ...

@artpol84
Copy link
Contributor Author

@jsquyres I think you are right. empty argument or external has same meaning. Closing this one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants