T.R | Title | User | Personal Name | Date | Lines |
---|
290.1 | lib$find_image_symbol | NQOS01::nyodialin22.nyo.dec.com::BowersD | Dave Bowers NSIS | Thu Mar 06 1997 10:07 | 25 |
| This may be the sort og thing you're looking for. I'm not familiar with
dlopen(), but lib$find_image_symbol allows you to dynamically execute
functions from a shared image (without linking).
\dave
=============================================================================
RTL_ROUTINES
LIB$
LIB$FIND_IMAGE_SYMBOL
The Find Universal Symbol in Shareable Image File routine reads
universal symbols from the shareable image file. This routine
then dynamically activates a shareable image into the P0 address
space of a process.
Format
LIB$FIND_IMAGE_SYMBOL filename ,symbol ,symbol-value
[,image-name]
|
290.2 | Please Log QAR on TRIFID Against VMSDOC | XDELTA::HOFFMAN | Steve, OpenVMS Engineering | Thu Mar 06 1997 10:32 | 8 |
| :Does VMS support dynamic library loading ( a-la dlopen() in UNIX ) ?
:I know that I can link my application with shared library,
:but I'm looking for method which is as close to dlopen() as possible.
Please log a QAR against the OpenVMS Master Index, and against
the documentation -- we should explicitly reference this terminology
in the master index and in the LIB$FIND_IMAGE_SYMBOL documentation.
(This quesiton comes up far too often...)
|
290.3 | | AUSS::GARSON | DECcharity Program Office | Thu Mar 06 1997 19:56 | 13 |
| re .0
Note however that whereas UNIX has separate calls for dlopen() (which
returns a handle), dlsym() and dlclose() (which use the handle),
VMS combines the function of dlopen() and dlsym() in the one call,
LIB$FIND_IMAGE_SYMBOL, which implicitly performs the equivalent of
dlopen() the first time the image is referenced and VMS does not have
the equivalent of dlclose().
If porting existing UNIX code I suggest you write emulations of the
UNIX routines, dlopen and dlsym, (unless a version of VMS later than
V6.2 includes these in the C RTL). This would be a SMOP. You may have
to NOP dlclose() and hope the program doesn't rely on it.
|
290.4 | | TLE::D_SMITH | Duane Smith -- DEC C RTL | Thu Mar 06 1997 21:09 | 5 |
| The DEC C RTL does not contain these functions. I have written jackets
which have the dlopen/dlsym/dlclose interface which layer on top of
lib$find_image_symbol. Send mail and I can dig them up.
Duane
|
290.5 | | TLE::D_SMITH | Duane Smith -- DEC C RTL | Fri Mar 07 1997 06:45 | 1 |
| Sergey contacted me offline.
|