hello_wrapper.c
1 #include <R.h> 2 #include <Rinternals.h> 3 #include <Rembedded.h> 4 #include <stdlib.h> 5 6 int main(int argc, char *argv[]) { 7 setenv("R_HOME", "/usr/lib/R", 1); 8 9 char *r_argv[] = {"R", "--slave", "--no-save", "--no-restore"}; 10 Rf_initEmbeddedR(4, r_argv); 11 12 SEXP e; 13 int errorOccurred; 14 15 PROTECT(e = lang3(install("cat"), mkString("Hello, World!"), mkString("\n"))); 16 R_tryEval(e, R_GlobalEnv, &errorOccurred); 17 UNPROTECT(1); 18 19 Rf_endEmbeddedR(0); 20 return 0; 21 }