[R] Linking a library with init(argc,argv) function

Maxime Debon maxime.debon at etudiant.univ-rennes1.fr
Wed Dec 10 21:12:12 CET 2008


I would like to embed the LibMesh library in R. I have already linked  
C++ code and build libraries as it is explained in the R-extension  
manual with trivial examples :


I am facing a difficulty with loading a library depending on a library  
(libMesh) which needs an initialization function (libMesh::init(argc,  

Conventionally, the way to make a bridge between R and C is :

extern "C" {

void foo_R(double* output, double* S,  double* K){

   *output = foo(*S,*K,*r,*sigma,*time);



This way, it doesn't seem possible to put arguments argc and argv. To  
go further and link LibMesh, an "int main(  int argc, char** argv  )"  
might have to be specified during the launching of R. May be the  
".First.lib" and the "library.dynam" load functions are necessary.  
But, even that way I am not able to perform the link. At the moment,  
segmentation fault is still the result with fake argc and argv.

If anyone has elements to proceed and implement "init(argc, argv)", it  
would be great,



More information about the R-help mailing list