我想同时使用RcppGSL和RcppArmadillo,是否可以在cxxfunction(内联CRAN程序包)的cxxfunction中使用多个插件?
我找到了一种方法:
plug.ArmaGSL <- Rcpp:::Rcpp.plugin.maker(include.before='#include <RcppArmadillo.h>
#include <RcppGSL.h>
#include <gsl/gsl_rng.h>',
Depends=c("RcppGSL", "RcppArmadillo", "Rcpp"),
LinkingTo=c("RcppGSL", "RcppArmadillo", "Rcpp"),
libs="-lgsl -larmadillo")
registerPlugin("RcppArmaGSL", plug.ArmaGSL)
foo <- cxxfunction(signature(sM="numeric"), body=bodytxt, inc=inctxt, plugin="RcppArmaGSL")
但似乎不那么直观。
最佳答案
好问题。 (在rcpp-devel上甚至会更好。)
我认为您需要编写自己的组合插件,有关详细信息,请参阅Rcpp-FAQ小插图中的问题3.6“如何为嵌入式程序包编写插件”。
关于r - cxxfunction中的多个插件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8978636/