我正在尝试在Code :: Blocks IDE中使用 Rcpp 包,但是当我尝试使用#include<Rcpp.h>
编译脚本时,我收到一条错误消息,指出该文件或存储库不存在
我安装了 Rcpp 库,因此在 RStudio 中我可以运行.cpp文件。
问题是我想在Code :: Blocks IDE中的c ++脚本中使用 Rcpp 类。
我该怎么做?
答案 0 :(得分:1)
您需要配置IDE的构建,以便:
您可以使用sourceCpp( , verbose = TRUE)
来举例说明:
例如,当sourceCpp
此文件:
#include <Rcpp.h>
using namespace Rcpp ;
// [[Rcpp::export]]
int zero(){
return 0 ;
}
在我的机器上,我明白了:
// ... lots of stuff irrelevant here ...
clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I"/Library/Frameworks/R.framework/Versions/3.4/Resources/library/Rcpp/include" -I"/Users/romain/Desktop" -I/usr/local/include -fPIC -O3 -c test.cpp -o test.o
clang++ -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/Library/Frameworks/R.framework/Resources/lib -L/usr/local/lib -o sourceCpp_28.so test.o -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
您可以从R CMD config
获取部分内容,例如
$ R CMD config DYLIB_LDFLAGS
-dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -fopenmp
答案 1 :(得分:0)
经过长时间的互联网搜索并向我所在公司的c ++程序员寻求帮助后,我设法找到了解决问题的可行解决方案,我会在接下来解释它以防万一某人:
解决方案非常简单,而不是尝试编译和执行独立脚本,关键是在Code :: Blocks中创建一个项目并在其中声明脚本。之后,只需在文件依赖项中声明Rcpp和R库,以及动态库。这样就可以运行#include<Rcpp.h>
,因此可以使用它为R程序员提供的所有冒险。