RccpArmadillo и RccpGSL не загружаются в RStudio в Windows

0

У меня есть функция C++:

#include <RcppArmadilloExtensions/sample.h>
using namespace Rcpp;
IntegerVector fnGender(int item, bool replace, NumericVector vSegPop, 
  IntegerVector vLevelsGender, NumericMatrix mGender) {    
  RNGScope scope;
  IntegerVector ret = RcppArmadillo::sample(vLevelsGender, vSegPop(item),
    replace, mGender.row(item)) ;
  return ret;
}

Я использую функцию RccpArmadillo :: sample вместо базового R sample().

Когда я загружаю функцию using sourceCpp, я получаю следующую ошибку.

g++ -m64 -I"C:/Users/USER/DOCUME~1/R/R-31~1.1/include" -DNDEBUG     -
I"C:/Users/USER/Documents/R/R-3.1.1/library/Rcpp/include"  -
I"d:/RCompile/CRANpkg/extralibs64/local/include" -O2 -Wall  -mtune=core2 -c Code.cpp -o Code.o
  • 1
    Где ошибка MSG?
  • 3
    // [[Rcpp::depends(RcppArmadillo)]] в вашем коде не должно быть // [[Rcpp::depends(RcppArmadillo)]] ?
Показать ещё 2 комментария
Теги:
rstudio
rcpp

1 ответ

1

В духе сезона, вот ваш код с двумя изменениями, предложенными в комментариях - который отлично подходит для меня в Windows:

#include <RcppArmadilloExtensions/sample.h>

// [[Rcpp::depends(RcppArmadillo)]]

using namespace Rcpp;

// [[Rcpp::export]]
IntegerVector fnGender(int item, bool replace, NumericVector vSegPop, 
  IntegerVector vLevelsGender, NumericMatrix mGender) {    
  IntegerVector ret = 
    RcppArmadillo::sample(vLevelsGender, vSegPop(item),
                          replace, mGender.row(item)) ;
  return ret;
}

Я удалил RNGScope scope; поскольку используемая здесь инфраструктура Rcpp build автоматически добавляет ее.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню