首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用armadillo示例编译rinside

无法使用armadillo示例编译rinside
EN

Stack Overflow用户
提问于 2013-07-04 20:00:56
回答 1查看 814关注 0票数 5

我正在尝试使用Rinside编译Rarmadillo示例,并且不断收到:

代码语言:javascript
复制
In file included from rinside_arma0.cpp:8:0:
/usr/local64/opt/R-2.15.2/lib/R/library/RcppArmadillo/include/RcppArmadillo.h:26:6: error: #error "The file 'Rcpp.h' should not be included. Please correct to include only 'RcppArmadillo.h'."

我用谷歌搜索了它,但我一直在获取源代码本身。有什么想法吗?

代码是:

代码语言:javascript
复制
// -*- c-indent-level: 4; c-basic-offset: 4; indent-tabs-mode: nil; -*-
//
// Simple example using Armadillo classes
//
// Copyright (C) 2012  Dirk Eddelbuettel and Romain Francois

#include <RInside.h>                    // for the embedded R via RInside
#include <RcppArmadillo.h>

int main(int argc, char *argv[]) {

    RInside R(argc, argv);      // create an embedded R instance

    std::string cmd = "diag(3)";    // create a Matrix in r 

    arma::mat m = Rcpp::as<arma::mat>(R.parseEval(cmd)); // parse, eval + return result

    std::cout << m << std::endl;    // and use Armadillo i/o  

    exit(0);
}

并使用以下命令进行编译:

代码语言:javascript
复制
g++ -I/usr/local64/opt/R-2.15.2/lib/R/include -I/usr/local64/opt/R-2.15.2/lib/R/library/Rcpp/include -I"/usr/local64/opt/R-2.15.2/lib/R/library/RcppArmadillo/include"   -I/usr/local64/opt/R-2.15.2/lib/R/library/RInside/include -g -O2 -Wall -I/usr/local/include   rinside_arma0.cpp  -L/usr/local64/opt/R-2.15.2/lib/R/lib -lR  -lf77blas -latlas -llapack -L/usr/local64/opt/R-2.15.2/lib/R/library/Rcpp/lib -lRcpp -Wl,-rpath,/usr/local64/opt/R-2.15.2/lib/R/library/Rcpp/lib -L/usr/local64/opt/R-2.15.2/lib/R/library/RInside/lib -lRInside -Wl,-rpath,/usr/local64/opt/R-2.15.2/lib/R/library/RInside/lib  -o rinside_arma0
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-06 16:02:34

您得到的错误是因为Rcpp.h包含在RcppArmadillo.h之前,而Rcpp.h包含在RInside.h中。

对于RcppArmadillo所带来的魔力,文件RcppArmadillo.h需要在Rcpp.h之前加载。所以我建议你这样做:

代码语言:javascript
复制
#include <RcppArmadillo.h>
#include <RInside.h>
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17469761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档