Changeset 3605 in Sophya for trunk/SophyaLib/SysTools
- Timestamp:
- Apr 29, 2009, 12:15:21 PM (16 years ago)
- Location:
- trunk/SophyaLib/SysTools
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SophyaLib/SysTools/pdlmgr.cc
r3226 r3605 29 29 flavours (Linux, HP/Compaq/Digital OSF-Tru64, SGI IRIX, IBM AIX, Sun Solaris, 30 30 MacOS X/Darwin). \n 31 For MacOS X/Darwin , the NSxxx API31 For MacOS X/Darwin (version <= 10.3), the NSxxx API 32 32 <tt> (NSLinkModule , NSCreateObjectFileImageFromFile, ...) </tt> 33 is used. 33 is used. From MacOSX v >= 10.4, NSxxx API is deprecated. 34 34 The example here shows the linking of shared library named "mylib.so" 35 35 containing a function \c double \c myfunction(double x). … … 252 252 cerr << "PDynLinkMgr::PDynLinkMgr() Not yet available on HP-UX " << endl; 253 253 return; 254 #elif defined(Darwin) 254 #elif defined(Darwin) && ( GCC_VERSION <= 3350 ) 255 255 NSObjectFileImageReturnCode nsrc = NSCreateObjectFileImageFromFile(fnameso.c_str(), &nsobjfile); 256 256 if (nsrc == NSObjectFileImageSuccess) { … … 297 297 cerr << "PDynLinkMgr::~PDynLinkMgr() Not yet available on HP-UX " << endl; 298 298 // return; 299 #elif defined(Darwin) 299 #elif defined(Darwin) && ( GCC_VERSION <= 3350 ) 300 300 if (dylok) { 301 301 if (nsmod != NULL) NSUnLinkModule(nsmod, NSUNLINKMODULE_OPTION_NONE); … … 327 327 return f; 328 328 #endif 329 #if defined(Darwin) 329 #if defined(Darwin) && ( GCC_VERSION <= 3350 ) 330 330 string funame = "_" + funcname; 331 331 NSSymbol nsf = NSLookupSymbolInModule(nsmod, funame.c_str()); -
trunk/SophyaLib/SysTools/pdlmgr.h
r2496 r3605 12 12 #if defined(HPUX) 13 13 #include <dl.h> 14 #elif defined(Darwin) 14 /* Les fonction NSCreateObjectFile...() sont deprecated - Il faut utiliser les dlopen()... 15 qui sont plus efficaces a partir de 10.4 - On se cale donc sur les versions de GCC */ 16 #elif defined(Darwin) && ( GCC_VERSION <= 3350 ) 15 17 #include <mach-o/dyld.h> 16 18 #else … … 47 49 #if defined(HPUX) 48 50 shl_t dlhandle; 49 #elif defined(Darwin) 51 #elif defined(Darwin) && ( GCC_VERSION <= 3350 ) 50 52 NSObjectFileImage nsobjfile; 51 53 NSModule nsmod;
Note:
See TracChangeset
for help on using the changeset viewer.