Skip to content
Prev 11972 / 398506 Next

Trouble compiling R-1.3.0 under Tru64

Peter Dalgaard BSA wrote:
I took a quick look at this. (Anything with R_FindSymbol sparks an
sense of responsibility :-)).  I'm running on a Linux box so my
diagnostics may not apply. However, what I see is the following:
Rf_GVText is in both modules/vfonts.so and also R.bin.
Depending on the behaviour of dlopen(), the call
   R_FindSymbol("Rf_GVText", "vfonts", NULL))
may resolve to the one in R.bin rather than the one in vfonts.so
defined in g_alab_her.c. That would explain the infinite recursion.

A quick look using nm gives
eeyore[modules-82]>nm vfonts.so | grep GVText
0001622c T Rf_GVText
eeyore[modules-83]>nm ../bin/R.bin | grep GVText
080f5794 T Rf_GVText
081858d0 b ptr_GVText     

illustrating the duplication and the potential for incorrect resolution
by dlsym().


If this is a correct diagnosis (and I think it is), it is a further
reason to use the newly introduced registration mechanism for native
routines in shared libraries, both in built-in modules and also
packages.

I'd appreciate knowing if this is in fact the cause of the problem.
Perhaps looking at the address of the Rf_GVText in R.bin and the value
of ptr_GVText to see if these are the same will provide an answer.

Feel free to mail me directly rather than the whole list to see if we
can sort this out.

 D.

  
    
Message-ID: <20010626193649.B13106@jessie.research.bell-labs.com>
In-Reply-To: <x2r8w79bnq.fsf@blueberry.kubism.ku.dk>; from p.dalgaard@biostat.ku.dk on Tue, Jun 26, 2001 at 11:25:13PM +0200