可以将R文件转换为可执行文件吗?

时间:2014-07-02 04:37:34

标签: r executable

我写了一个打开GUI的R程序。我想让这个文件可执行。当我通过互联网搜索时,我得到了一些答案,表示无法完成。但答案是2012年的。是否有任何改进可以帮助我的R文件转换为可执行文件?

1 个答案:

答案 0 :(得分:0)

您可以embed R使用C.例如:

void
init_R()
{
extern Rf_initEmbeddedR(int argc, char **argv);
  int argc = 1;
  char *argv[] = {"ggobi"};

  Rf_initEmbeddedR(argc, argv);
}

 /*
  Calls the equivalent of 
    x <- integer(10)
    for(i in 1:length(x))
       x[i] <- 1
    print(x)
 */
int
eval_R_command()
{
 SEXP e;
 SEXP fun;
 SEXP arg;
 int i;
 void init_R(void);

  init_R();

    fun = Rf_findFun(Rf_install("print"),  R_GlobalEnv);
    PROTECT(fun);
    arg = NEW_INTEGER(10);
    for(i = 0; i < GET_LENGTH(arg); i++)
      INTEGER_DATA(arg)[i]  = i + 1;
    PROTECT(arg);

    e = allocVector(LANGSXP, 2);
    PROTECT(e);
    SETCAR(e, fun);
    SETCAR(CDR(e), arg);

      /* Evaluate the call to the R function.
         Ignore the return value.
       */
    eval(e, R_GlobalEnv);
    UNPROTECT(3);   
  return(0);
}

我希望你觉得它很有帮助。如果情况并非如此,请发表评论告诉我。