2013-10-14 5 views
2

Я пытаюсь создать пользовательский пакет, который прекрасно строился на окне окна моего коллеги, в котором установлен R 2.15.1. Моя конфигурация является:RcppArmadillo "ReferenceInputParameter не является шаблоном"

R 2.15.3, RTools 3,0, Rcpp 0.10.4, RcppArmadillo 0.3.920.1, RStudio 0.97.551

Это первый случай компиляции, когда я бегу "R CMD INSTALL MyPackage". indfunForecast.cpp является одним из исходных файлов в пакете.

>g++ -m32 -I"D:/PROGRA~1/R/R-215~1.3/include" -DNDEBUG 
-I"D:/R/win-library/2.15/Rcpp/include" -I"D:/R/win-library/2.15/RcppArmadillo/include" 
-I"d:/RCompile/CRANpkg/extralibs64/local/include" 
-O2 -Wall -mtune=core2 
-c indfunForecast.cpp -o indfunForecast.o 

сообщения об ошибках, которые следуют являются:

In file included from D:/R/win-library/2.15/RcppArmadillo/include/RcppArmadillo.h:30:0, 
      from indfunForecast.cpp:16: 
D:/R/win-library/2.15/RcppArmadillo/include/RcppArmadilloForward.h:99:33: 
error: 'ConstReferenceInputParameter' is not a template 
D:/R/win-library/2.15/RcppArmadillo/include/RcppArmadilloForward.h:100:33: 
error: 'ReferenceInputParameter' is not a template 
D:/R/win-library/2.15/RcppArmadillo/include/RcppArmadilloForward.h:101:33: 
error: 'ConstInputParameter' is not a template 

Любая идея, что происходит ???

Цените свою помощь. Sachko

ответ

2

У вас есть новейший RcppArmadillo, которому нужен новейший Rcpp, которого у вас нет (и я не буду утомлять вас подробностями, но это связано с CRAN).

Установите Rcpp 0.10.5 из источника, и все должно работать.

+0

Я также задался вопросом, нужно ли пользователюX обновлять R, чтобы соответствовать RTools. –

+0

, возможно, защиты уровня R в DESCRIPTION недостаточно, и у нас должен быть код, который утверждает, что версия Rcpp достаточно высока в заголовках RcppArmadillo. –

+1

ОПИСАНИЕ обычно достаточно - здесь я не обновлял его, так как я загрузил оба пакета совместно в связанном представлении, чтобы оба они попали на CRAN. Но только на этой неделе я узнал о проблеме с старым R-выпуском, когда Rcpp держал ее обратно на Windows-only. Таким образом, в этом смысле явно моя ошибка в том, что вы не требуете правильного Rcpp в RcppArmadillo DESCRIPTION, но он «только» влияет на выбор Windows по выбору Uw, чтобы не строить, если предыдущая R-версия не удалась. –

Смежные вопросы