R-beta: dyn.load: incompatability between R and S
Jonathan Myles (jonathan.myles@mrc-bsu.cam.ac.uk)
Thu, 24 Jul 1997 17:56:08 +0100 (BST)
Date: Thu, 24 Jul 1997 17:56:08 +0100 (BST)
Message-Id: <199707241656.RAA21898@genin.mrc-bsu.cam.ac.uk>
From: Jonathan Myles <jonathan.myles@mrc-bsu.cam.ac.uk>
To: r-help@stat.math.ethz.ch
Subject: R-beta: dyn.load: incompatability between R and S
I have C routines in a collection of files
"/homef/jonm/postdocs/GLMM_project/Cprogs/nn/misc.o"
"/homef/jonm/postdocs/GLMM_project/Cprogs/nn/random.o"
"/homef/jonm/postdocs/GLMM_project/Cprogs/nn/ars.o"
... etc , where the third file includes functions which call
functions in the second.
In S, the function
> gload
function()
{
dyn.load("/homef/jonm/postdocs/GLMM_project/Cprogs/nn/misc.o")
dyn.load("/homef/jonm/postdocs/GLMM_project/Cprogs/nn/random.o")
dyn.load("/homef/jonm/postdocs/GLMM_project/Cprogs/nn/ars.o")
....
works fine.
However, in R although the first two statements execute OK, the third
produces
> dyn.load("/homef/jonm/postdocs/GLMM_project/Cprogs/nn/ars.o")
Error in dyn.load(x) : ld.so.1: /scratch0/jonm/R-0.50-a1/bin/R.binary: fatal: re
location error: symbol not found: unitexp: referenced in /homef/jonm/postdocs/GL
_project/Cprogs/nn/ars.o>
"unitexp" is a program in
"/homef/jonm/postdocs/GLMM_project/Cprogs/nn/random.o"
so presumably the problem is that S "knows" about functions already loaded
by earlier dyn.load statements but R doesn't.
Is there any answer other than putting everything into one
huge file?
Thanks
Jonathan Myles
--
Dr. Jonathan Myles e-mail:jonathan.myles@mrc-bsu.cam.ac.uk
MRC Biostatistics Unit Tel. 01223 330371
Institute of Public Health FAX 01223 330388
University Forvie Site
Robinson Way
CAMBRIDGE
CB2 2SR
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-help-request@stat.math.ethz.ch
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=