As I continue to have the same problem with the missing ltdl.h header I
reported few days ago, I spend some time today to dig a little bit inside
to find out what and how happens. Finally, I figure out the problem. It
happens only after the last set of changes on the Makefile.am and only on
systems where there is not a ltdl.h installed on a default location.
Otherwise ... on systems where the ltdl.h is installed ... the ugliest
things may happens. We can use our ltdl.h in some directories (like the
opal base) and the system one in others (because a missing -I). How ?
Simply because most of the base components require the
opal/mca/mca_base_component_repository.h include. In this file at line 27
there is a include "ltdl.h" supposely protected by the OMPI_WANT_LIBLTDL.
This define is always true as it come from the ompi_config.h so the ltdl.h
is always required. Now on system where this file does not exist on some
system include directories we are supposed to get the one we have ...
except that the -I for our include is not added in all the base
directories after the last set of changes to the Makefile.am.
Now your turn to have fun ... and to bring back a consistent behaviour :)
"We must accept finite disappointment, but we must never lose infinite
Martin Luther King