Good question Rolf. Rui, thanks for pointing out dyn.unload. When I started using Rcpp a couple of years ago I got burned by stale .so enough times that I adopted a policy of recompile-then-start new R session. My workflow does not include Rolf's "brazillion" repeats, so the overhead of this approach has not been too painful. The documentation for dyn.unload (via ?dyn.unload) includes the following statement:
"The function dyn.unload unlinks the DLL. Note that unloading a DLL and then re-loading a DLL of the same name may or may not work: on Solaris it uses the first version loaded." Eric On Thu, Mar 1, 2018 at 2:21 PM, Rui Barradas <ruipbarra...@sapo.pt> wrote: > Hello, > > In such cases, with C code, I call dyn.unload before loading the modified > shared lib again. > I don't know if this changed recently, but it used to be needed or else R > wouldn't load the new lib. When I call dyn.unload followed by dyn.load I > never had problems. > (Or the other way around, call dyn.unload before modifying the C code.) > > Hope this helps, > > Rui Barradas > > On 3/1/2018 8:52 AM, Rolf Turner wrote: > >> >> I am working with a function "foo" that explicitly dynamically loads a >> shared object library or "DLL", doing something like dyn.load("bar.so"). >> This is a debugging exercise so I make changes to the underlying Fortran >> code (yes, I acknowledge that I am a dinosaur) remake the DLL "bar.so" and >> then run foo again. This is all *without* quitting and restarting R. (I'm >> going to have to do this a few brazillion times, and >> I want the iterations to be as quick as possible.) >> >> This seems to work --- i.e. foo seems to obtain the latest version of >> bar.so. But have I just been lucky so far? (I have not experimented >> heavily). >> >> Am I running risks of leading myself down the garden path? Are there >> Traps for Young (or even Old) Players lurking about? >> >> I would appreciate Wise Counsel. >> >> cheers, >> >> Rolf Turner >> >> > ______________________________________________ > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posti > ng-guide.html > and provide commented, minimal, self-contained, reproducible code. > [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.