From: SourceForge.net <no...@so...> - 2010-07-22 11:48:12
|
Bugs item #3033027, was opened at 2010-07-22 14:47 Message generated for change (Settings changed) made by petasis You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=3033027&group_id=10894 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: 40. Dynamic Loading Group: current: 8.6b1 Status: Open Resolution: None Priority: 5 Private: No Submitted By: Georgios Petasis (petasis) >Assigned to: Daniel A. Steffen (das) Summary: load: loaded shared libraries don't export symbols (OS X) Initial Comment: I have observed that under OS X 10.6 (at least), libraries loaded with Tcl's load are not visible from other libraries, also loaded with load. Thus if you load a library A, and then load a library B that depends on A, library B is not loaded if A does not resides on a directory the dynamic linker searches for libraries. It is not recognised that library A is already loaded in the process. This seems OS X specific, as I cannot reproduce at least under windows & linux. I know that load calls dlopen(..., RTLD_GLOBAL); which does not seem to do as advertised. I had to call NSAddImage(NSADDIMAGE_OPTION_RETURN_ON_ERROR | NSADDIMAGE_OPTION_WITH_SEARCHING | NSADDIMAGE_OPTION_MATCH_FILENAME_BY_INSTALLNAME ), after I loaded lib A, to be able to load lib B. However, NSAddImage is already deprecated in 10.6. The relevant thread is here: http://groups.google.gr/group/comp.lang.tcl/browse_thread/thread/87266afd63143a11/f9b735ee56100d57 ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=3033027&group_id=10894 |