dyn.load(libname) dyn.unload(libname) is.loaded(symbol) symbol.C(name) symbol.For(name)
libname
| a character string giving the pathname to a DLL. |
symbol
| a character string giving a symbol name. |
name
| a character string giving either the name of a C function or Fortran subroutine. Fortran names probably need to be given entirely in lower case (but this may be system-dependent). |
dyn.load is used for its side effect which
links the specified shared library to the executing R image.
Calls to .C, .Fortran and .External can
then be used to execute compiled C functions or Fortran subroutines
contained in the library.
The function dyn.unload unlinks the shared library.
Functions symbol.C and symbol.For map function /
subroutine names to
the symbol name in the compiled code: is.loaded checks if the
symbol name is loaded and so available for use in .C ....
dlopen has become the standard
for doing this under UNIX.
Under UNIX dyn.load uses the dlopen mechanism and
should work on all platforms which support it. On Windows it uses
the standard mechanisms for loading 32-bit DLLs.
The original code for loading DLLs in UNIX was provided by Heiner Schwarte. The compatibility code for HP-UX was provided by Luke Tierney.
.C, .Fortran, .External.
is.loaded(symbol.For("hcass2")) #-> probably FALSE
library(mva)
is.loaded(symbol.For("hcass2")) #-> TRUE