Hello,

I have recently started working on OpenMPI, and part of my job consists in adding a new module to OpenMPI.

I would like to take this opportunity to thank the people who have been involved in writing https://svn.open-mpi.org/trac/ompi/wiki/devel/CreateComponent as it was very helpful.

Attached is a patch that calls lt_dlerror() in order to show detailed information about what symbol is missing, when a component fails to load. I needed it to find out what was wrong in my module and I believe it can be useful to others as well.


--
Greetings, A. Huillet

diff -r f567823ec31b opal/mca/base/mca_base_component_find.c
--- a/opal/mca/base/mca_base_component_find.c	Fri Jul 31 17:11:48 2009 +0200
+++ b/opal/mca/base/mca_base_component_find.c	Mon Aug 03 14:22:01 2009 +0200
@@ -502,8 +502,8 @@
   component_struct = (mca_base_component_t*)lt_dlsym(component_handle, struct_name);
   if (NULL == component_struct) {
     opal_output_verbose(vl, 0, "mca: base: component_find: \"%s\" does not appear to be a valid "
-                        "%s MCA dynamic component (ignored)", 
-                        target_file->basename, target_file->type);
+                        "%s MCA dynamic component (ignored), lt_dlsym said: \"%s\"", 
+                        target_file->basename, target_file->type, lt_dlerror());
     free(mitem);
     free(struct_name);
     lt_dlclose(component_handle);

Reply via email to