代码之家  ›  专栏  ›  技术社区  ›  jakes

Rmarkdown的Rcpp?编译时出错

  •  1
  • jakes  · 技术社区  · 6 年前

    我想用Rmarkdown创建一个html文档。在R代码的开始,我需要提供很少的R脚本,其中一个包含C++函数的定义。 Rcpp . Rmd中的一段代码成功运行,但在编写代码时出现错误:

    第85行命令“sourceCpp(code=code,env=env,rebuild=rebuild,cacheDir=cacheDir)”中出错:生成共享库时出现错误1。呼叫:。。。使用Visible->eval->eval->CPP函数->sourceCpp

    不幸的是,我不能分享我的全部代码,但它的结构如下。不管怎样,这个错误似乎是由使用 cppFunction

    ```{r}
    library(rlang)
    library(tidyverse)
    library(Rcpp)
    
    source('directory\\script1.R')
    source('directory\\script2.R')
    ```
    
    1 回复  |  直到 6 年前
        1
  •  6
  •   Dirk is no longer here    6 年前

    请参阅knitr文档——Rcpp实际上是一个合适的处理器。所以你可以

    ```{Rcpp firstChunk}
    Rcpp::IntegerVector doubleMe(Rcpp::IntegerVector x) {
      return x + x;
    }
    ```
    

    ```{r secondChunk}
    myvector <- 19:21
    cat("The answer is ", tail(doubleMe(myvector), 1), "\n")
    ```