[Rd] getConnection is not found in R depending on the Linux flavour (RedHat or Debian) - dyn.load problems
Prof Brian Ripley
ripley at stats.ox.ac.uk
Sat Apr 7 09:52:59 CEST 2007
getConnection is not part of the API, so it is not intended to be visible
to your code. The code reads
/* internal, not the same as R function getConnection */
Rconnection getConnection(int n)
and 'internal' and 'attribute_hidden' should have been enough of a clue!
On many OSes it is noticeably more efficient not to export unneeded entry
points from DLLs, so we do not do so where the OS supplies (simple)
facilities to do so.
There are severe warnings in 'Writing R Extensions' about making use of
entry points not in the API.
There are medium-term plans to change the internal structure of
connections to make use of features not in R when they were designed (weak
references and finalizers), so this will definitely remain non-API.
On Fri, 6 Apr 2007, Simon Penel wrote:
> Hello R developers,
> I am working on the "seqinr" package and I encounter a tricky problem
> using a C function.
> We defined a C fonction called "getzlibsock" which is dedicated to
> socket connections. This function is using the R internal C function
> called "getConnection(int)" in order to get information about the socket
> previously opened with the dedicated R functions.
> The program works fine on several platform:
> -Unix (SunOS),
> -MacOS and
> -Linux (some).
> However, on Linux, an error occurs depending on the installation.
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-devel