0
Я написал функции с использованием RcppArmadillo и встроенных пакетов, я использую Windows 7, R-2.14.1 и Rtools215, и путь проверен.Создание пакета, который использует RcppArmadillo
funs = cxxfunction(list(MHcpp = signature(…), IWcpp = signature(…), c(code1,code2),
plugin="RcppArmadillo") # No compline and I they work fine as expected.
Package.skeleton(“new”,funs) # to create the package skeleton and the dynamic libray
# to build the package I use
R CMD INSTALL –build new # I get the following error
C:/Users/samuel/Documents/R/win-library/2.14/Rcpp/lib/i386/libRcpp.a(Dimension.o
):Dimension.cpp:(.text+0x342): undefined reference to `_Unwind_SjLj_Unregister'
…………………………………………………………..
…………………………………………………………….
C:/Users/samuel/Documents/R/win-library/2.14/Rcpp/lib/i386/libRcpp.a(Environment
.o):Environment.cpp:(.text$_ZN4Rcpp11no_such_envC1Ei[Rcpp::no_such_env::no_such_
env(int)]+0x3fc): undefined reference to `_Unwind_SjLj_Unregister'
C:/Users/samuel/Documents/R/win-library/2.14/Rcpp/lib/i386/libRcpp.a(Environment
.o):Environment.cpp:(.text$_ZN4Rcpp11no_such_envC1Ei[Rcpp::no_such_env::no_such_
env(int)]+0x644): undefined reference to `_Unwind_SjLj_Resume'
collect2: ld returned 1 exit status
ERROR: compilation failed for package 'new'
* removing 'C:/Users/samuel/Documents/R/win-library/2.14/new'
Любые советы по устранению проблемы.
Я попытался использовать RcppArmadillo.package.skeleton («new», funs), он создает каталоги и файл new.cpp, содержащий функции MHcpp и IWcpp. Затем я проверил, можно ли установить пакет «новый» «Rcmd check new», это то, что я получаю. * проверка файла 'new/DESCRIPTION' ... OK * проверка содержимого пространства имен ... OK * проверка зависимостей пакетов ... OK * проверка, является ли это исходным пакетом ... OK * проверка if существует пространство имен ... OK * проверка исполняемых файлов ... OK * проверка наличия пакета «новый» ... ОШИБКА Ошибка установки. Что мне не хватает? Спасибо –
Опубликовать воспроизводимый пример и все ошибки на rcpp-devel –
Спасибо Дирк, проблема решена. Я использовал Rtools213, удалив старую версию, а затем установив новый «Rtools215», решив проблему. Спасибо за предложение. RcppArmadillo - отличный пакет, который ускорил мой код более чем на 70%. –