我写了一个打开GUI的R程序。我想让这个文件可执行。当我通过互联网搜索时,我得到了一些答案,表示无法完成。但答案是2012年的。是否有任何改进可以帮助我的R文件转换为可执行文件?
答案 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);
}
我希望你觉得它很有帮助。如果情况并非如此,请发表评论告诉我。