我正在使用Rstudio创建一个包,并探索使用Rcpp包来获取对C ++代码的访问权限,但是,在尝试构建包时,错误被抛出如下:
fatal error: Rcpp.h: No such file or directory
内联C ++代码编译很好,它只在考虑src
文件夹中的独立C ++文件时,显然是指#include <Rcpp.h>
文件头部的.cpp
指令。
我认为它可能与环境变量有关,是否有人知道正确的配置是什么以及如何修复在Ubuntu 12.04 LTS环境中运行的Rstudio?
命令sourceCpp('./src/xyz.cpp')
按预期执行,从RStudio IDE中执行Build and Reload
时抛出错误。
答案 0 :(得分:18)
如果没有可用的包装,很难说。我想你错过了:
LinkingTo: Rcpp
在<描述文件中。
答案 1 :(得分:7)
您是否偶然开始在RStudio中使用'创建包'?如果是这样,你是否意识到你可能错过了它的sibbling选项'创建一个包含Rcpp'的包?
有关详细信息,请参阅Using Rcpp with RStudio网站上的页面,特别是有关打包的最后一节。
另请注意,我们写了整个小插图on using Rcpp with your own packages,所以我建议您也看一下。
答案 2 :(得分:0)
尝试在Ubuntu 14系统上安装“xml2”软件包时遇到了同样的症状(Rcpp.h: No such file or directory
)。在我的情况下,根本原因似乎是包“Rcpp”的错误安装。有些文件在那里(Rcpp / libs),但其他文件没有(Rcpp / include)。我不确定系统是如何进入这种状态的,但我怀疑该软件包的安装已经部分终止。重新安装包“Rcpp”为我解决了这个问题。
答案 3 :(得分:0)
这是因为您的GCC已经更新,并且与您安装R时的GCC不同。我遇到了同样的问题。
我删除了包裹&#34; Rccp&#34;使用:
remove.packages("Rcpp")
然后你需要再次安装它。跑吧:
source("https://bioconductor.org/biocLite.R")
biocLite("Rcpp")