[R] dyn.unload? library.dyn.unload?
    wolski 
    wolski at molgen.mpg.de
       
    Tue Dec 30 12:51:42 CET 2003
    
    
  
Hi!
The writing R extension states.
"The shared object/DLL is loaded by dyn.load and unloaded by dyn.unload. Unloading
is not normally necessary, but it is needed to allow the DLL to be re-built on some platforms,
including Windows."
I am working on Windows.
 
I load the dll as described in R-exts with 
.First.lib <- function(lib, pkg) library.dynam("mscalibD",pkg,lib)
in the zzz.R file.
After starting R and loading the package with
library(mscalibD)
>library.dynam()
[1] "ts"       "nls"      "modreg"   "mva"      "ctest"    "methods"  "mscalibD"
> dyn.unload("D:/prog/R/rw1081/library/mscalibD/libs/mscalibD.dll")
Error in dyn.unload(x) : dynamic/shared library "D:/prog/R/rw1081/library/mscalibD/libs/mscalibD.dll" was not loaded
But
> dyn.load("D:/prog/R/rw1081/library/mscalibD/libs/mscalibD.dll")
> dyn.unload("D:/prog/R/rw1081/library/mscalibD/libs/mscalibD.dll")
works.
So i guess that dyn.unload isn't supposed to work together with library.dynam. Is this right?
I guess also that I should use instead
.Last.lib<-funciton(libpath) library.dynam.unload("mscalibD", libpath)
Is this right? If so where I have to place this function? In the zzz.R?
And how to call it from within R? Is it called by detach()?
> detach(package:mva)
> is.loaded(symbol.For("hcass2"))
[1] TRUE
I gues no. Because as dyn.load {base} example section states
is.loaded(symbol.For("hcass2")) #-> probably TRUE, as mva is loaded.
The help is mind boggling. Please help!
Eryk
    
    
More information about the R-help
mailing list