[Rd] Undefined symbol "Rf_pythag" while loading spatstat

Rainer Hurling rhurlin at gwdg.de
Sat Mar 19 12:28:09 CET 2011


Today I installed the newest R develepment branch
R version 2.14.0 Under development (unstable) (2011-03-18 r54866)
on FreeBSD 9.0-CURRENT (amd64). All seems fine so far.

After that I updated my R packages with option 'checkBuilt=TRUE'. There 
are four packages (spatstat, pscl, adehabitatLT, adehabitatHR) which 
gives an error like this:

Error in dyn.load(file, DLLpath = DLLpath, ...) :
   kann shared object 
'/usr/local/lib/R/library/spatstat/libs/spatstat.so' nicht laden:
   /usr/local/lib/R/library/spatstat/libs/spatstat.so: Undefined symbol 
"Rf_pythag"
Fehler: loading failed
Ausführung angehalten
Fehler: loading failed


Searching around I found a hint in 
http://developer.r-project.org/R_svnlog_2011 about upcoming changes with 
'Rf_pythag':

------------------------------------------------------------------------
r54767 | ripley | 2011-03-13 07:30:32 -0400 (Sun, 13 Mar 2011) | 1 line
Changed paths:
    M /trunk/doc/NEWS.Rd
    M /trunk/src/include/Rmath.h0.in
    M /trunk/src/nmath/imax2.c

keep Rf_pythag for a little longer
------------------------------------------------------------------------


R News of newest devel has three entries about the change:

CHANGES IN R VERSION 2.14.0:
   DEPRECATED AND DEFUNCT:
     o The entry point pythag formerly in Rmath.h is defunct: use
       instead the C99 function hypot.
CHANGES IN R VERSION 2.13.0:
   C-LEVEL FACILITIES:
     o pythag duplicated the C99 function hypot.  It is no longer
       provided, but is used a substitute for hypot in the very unlikely
       event that the latter is not available.
   DEPRECATED & DEFUNCT:
     o The entry point pythag in Rmath.h is deprecated in favour of the
       C99 function hypot.  A wrapper for hypot is provided for R 2.13.x
       only.


Because of that informations I attempted to change 'pythag' against 
'hypot' in spatstat/src/lookup.c and it works. Is this the only required 
adaption which has to be done on the four named packages?

Thanks in advance,
Rainer Hurling



More information about the R-devel mailing list