We already use global symbols; mca_base_component_repository.c invokes: if (lt_dladvise_global(&opal_mca_dladvise)) { return OPAL_ERROR; }
On Mar 5, 2010, at 6:18 PM, George Bosilca wrote: > Unfortunately this will not fix his issues ;( I pretty sure that his problem > is related to the fact that mca_pml_v is exported by another dynamic module, > and therefore not available via dlsym. I don't think there is a simple > solution for this problem, except going back to GLOBAL symbols. > > george. > > On Mar 5, 2010, at 18:02 , Jeff Squyres wrote: > > > Ick. > > > > I wondered aloud on IM to Terry after your earlier emails if we should just > > custom-patch ltdl in OMPI to fix this issue. The problem is that libltdl > > is effectively reporting the "wrong" error back to OMPI, so the error > > string that we get to print out ends up not being very useful (e.g., not > > showing which symbol was missing, or what the problem was with the dlopen). > > Fixing this properly in libltdl is actually somewhat tricky -- which is > > why it hasn't been fixed yet. But given that OMPI's use of libltdl is > > pretty specific, we might be able to get away with a simple fix that works > > just for OMPI (but wouldn't necessarily be suitable for all other libltdl > > users). > > > > Hmmm... > > > > This looks do-able. I'll commit in a bit. > > > > > > > > On Mar 5, 2010, at 1:27 PM, Leonardo Fialho wrote: > > > >> I see... but it is really strange because this module is clean, it does > >> not use nothing. This is the output of the nm command, I can't see any > >> symbol which is not available. > >> > >> [lfialho@aoclsb-clus openmpi]$ nm mca_vprotocol_receiver.so > >> 0000000000201208 a _DYNAMIC > >> 0000000000201408 a _GLOBAL_OFFSET_TABLE_ > >> w _Jv_RegisterClasses > >> 00000000002011e0 d __CTOR_END__ > >> 00000000002011d8 d __CTOR_LIST__ > >> 00000000002011f0 d __DTOR_END__ > >> 00000000002011e8 d __DTOR_LIST__ > >> 00000000000011d0 r __FRAME_END__ > >> 00000000002011f8 d __JCR_END__ > >> 00000000002011f8 d __JCR_LIST__ > >> 0000000000201640 A __bss_start > >> w __cxa_finalize@@GLIBC_2.2.5 > >> 0000000000000d40 t __do_global_ctors_aux > >> 00000000000007c0 t __do_global_dtors_aux > >> 0000000000201200 d __dso_handle > >> w __gmon_start__ > >> 0000000000201640 A _edata > >> 0000000000201648 A _end > >> 0000000000000d78 T _fini > >> 0000000000000750 T _init > >> 00000000000007a0 t call_gmon_start > >> 0000000000201640 b completed.6115 > >> 0000000000000810 t frame_dummy > >> U mca_pml_v > >> 0000000000201460 D mca_vprotocol_receiver > >> 0000000000000c71 t mca_vprotocol_receiver_add_comm > >> 0000000000000a5f t mca_vprotocol_receiver_add_procs > >> 0000000000201540 D mca_vprotocol_receiver_component > >> 0000000000000cc3 t mca_vprotocol_receiver_component_close > >> 0000000000000d18 t mca_vprotocol_receiver_component_finalize > >> 0000000000000cce t mca_vprotocol_receiver_component_init > >> 0000000000000cb8 t mca_vprotocol_receiver_component_open > >> 0000000000000c93 t mca_vprotocol_receiver_del_comm > >> 0000000000000a89 t mca_vprotocol_receiver_del_procs > >> 000000000000083c t mca_vprotocol_receiver_dump > >> 0000000000000d23 t mca_vprotocol_receiver_enable > >> 00000000000009e7 t mca_vprotocol_receiver_iprobe > >> 0000000000000b9a t mca_vprotocol_receiver_irecv > >> 0000000000000ab3 t mca_vprotocol_receiver_isend > >> 0000000000000a29 t mca_vprotocol_receiver_probe > >> 0000000000000c00 t mca_vprotocol_receiver_recv > >> 0000000000000b21 t mca_vprotocol_receiver_send > >> 00000000000009bd T mca_vprotocol_receiver_start > >> 0000000000000864 t mca_vprotocol_receiver_test > >> 0000000000000896 t mca_vprotocol_receiver_test_all > >> 00000000000008d0 t mca_vprotocol_receiver_test_any > >> 0000000000000950 t mca_vprotocol_receiver_test_some > >> 0000000000000916 t mca_vprotocol_receiver_wait_any > >> 000000000000098a t mca_vprotocol_receiver_wait_some > >> U ompi_request_null > >> U opal_output > >> 0000000000201440 d p.6113 > >> [lfialho@aoclsb-clus openmpi]$ > >> > >> On Mar 5, 2010, at 7:00 PM, Terry Dontje wrote: > >> > >>> Sorry meant to add this, but you might be able to try and find the symbol > >>> causing the issue by twiddling with LD_DEBUG > >>> > >>> --td > >>> Terry Dontje wrote: > >>>> Possibly there is an external symbol in the .so that is being loaded > >>>> that cannot be resolved. > >>>> --td > >>>> Leonardo Fialho wrote: > >>>>> Hi, > >>>>> > >>>>> I know that libtool does not help us to find the source of this error, > >>>>> but, what can generate the following error? > >>>>> > >>>>> [aoclsb-clus.uab.es:11724] mca: base: component_find: unable to open > >>>>> /home/lfialho/lib/openmpi/mca_vprotocol_receiver: perhaps a missing > >>>>> symbol, or compiled for a different version of Open MPI? (ignored) > >>>>> > >>>>> 1) yes, the file exists > >>>>> 2) yes, it has been compiled among all other components > >>>>> 3) yes, it is the same Open MPI version > >>>>> 4) this component is a copy of the pessimist component implemented by > >>>>> Aurelien > >>>>> 5) Aurelien's component presents the same error > >>>>> > >>>>> The question is: what mistake should generate an error during module > >>>>> loading? > >>>>> > >>>>> Thanks in advance, > >>>>> Leonardo > >>>>> _______________________________________________ > >>>>> devel mailing list > >>>>> de...@open-mpi.org > >>>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel > >>>>> > >>>> > >>>> _______________________________________________ > >>>> devel mailing list > >>>> de...@open-mpi.org > >>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel > >>> > >>> _______________________________________________ > >>> devel mailing list > >>> de...@open-mpi.org > >>> http://www.open-mpi.org/mailman/listinfo.cgi/devel > >> > >> > >> _______________________________________________ > >> devel mailing list > >> de...@open-mpi.org > >> http://www.open-mpi.org/mailman/listinfo.cgi/devel > >> > > > > > > -- > > Jeff Squyres > > jsquy...@cisco.com > > For corporate legal information go to: > > http://www.cisco.com/web/about/doing_business/legal/cri/ > > > > > > _______________________________________________ > > devel mailing list > > de...@open-mpi.org > > http://www.open-mpi.org/mailman/listinfo.cgi/devel > > > _______________________________________________ > devel mailing list > de...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/devel > -- Jeff Squyres jsquy...@cisco.com For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/