我一直在尝试使用Rcpp软件包将某些c / c ++代码的功能扩展到R中。
但是我在包含标题和链接时遇到了问题
我制作了以下示例来说明我的问题:
头文件:add.h
int add(int a,int b);
cfile:add.c
int add(int a,int b){
return a+b;
}
猴子cpp
#include <cstdio>
#include <Rcpp.h>
#include "add.h"
using namespace Rcpp;
// [[Rcpp::export]]
NumericVector monkey(std::string string1,std::string string2) {
//below not important
NumericVector rary(5);
for(int i=0;i<5;i++)
rary[i] = i;
return rary;
}
猴子
nam1 <- "nam1"
nam2 <- "nam2"
Rcpp::sourceCpp("monkey.cpp")
monkey(nam1,nam2)
q1。是否可以使用sourceCpp函数为gcc编译指定-I标志?
q2。如果我的界面cpp文件依赖于其他.o文件,是否可以使用sourceCpp函数与这些文件链接?
快速的:
的sourceCpp()
是对于小的测试应用程序; 它可以使用一组扩展程序,这些扩展程序提供扩展插件。
因此,您可能需要为您的头文件编写一个自定义插件,这可能会过分杀人,因为...
R中更复杂的代码组织通常是通过包完成的。您应该考虑一下。
“ Rcpp属性”小插图中的3.5节提供了所有选项。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句