繁体   English   中英

Rcpp错误:'unique_ptr'不是'std'的成员

[英]Rcpp error: ‘unique_ptr’ is not a member of ‘std’

我在Ubuntu 16.04 LTS上使用RStudio,并使用Rcpp为R包创建了代码。

我的代码工作正常,直到我把它移到R包中。 现在我收到错误:

error: ‘unique_ptr’ is not a member of ‘std’

有罪的代码是:

typedef std::list<std::unique_ptr<Random> > ears_t;

我的cpp文件的顶部包含对cpp11插件的引用

// [[Rcpp::plugins(cpp11)]]
// [[Rcpp::depends(BH)]]
#include <Rcpp.h>
#include <vector>
#include <memory>
#include <boost/ptr_container/ptr_vector.hpp>
using namespace Rcpp;

描述文件链接到并导入各种包:

LinkingTo: Rcpp, BH
Imports: Rcpp, BH, raster, XML

我看过一篇帖子表明问题与不包含内存类有关,另一篇与C ++ 11有关。

无论哪种方式,我都不确定如何解决这个问题。 任何建议将不胜感激。

对于使用C ++ 11的软件包,您希望在DESCRIPTION文件中包含以下内容:

SystemRequirements: C++11

正如Dirk所建议的另一种可能性是将以下内容添加到src/Makevars{.win}文件中:

CXX_STD=C++11

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM