Ответ 1
Трудно сказать, не имея доступного пакета. Думаю, вы пропустите:
LinkingTo: Rcpp
в вашем файле DESCRIPTION.
Я использую Rstudio для создания пакета и изучения использования пакета Rcpp для получения доступа к С++-коду, однако при попытке создать пакет, и возникает ошибка:
fatal error: Rcpp.h: No such file or directory
Компилятор Inline С++ отлично компилируется, только при рассмотрении автономных файлов С++ в папке src
, явно ссылаясь на директиву #include <Rcpp.h>
во главе файла .cpp
.
Я думаю, что это может иметь какое-то отношение к переменным окружения, кто-нибудь знает, что такое правильная настройка и как исправить для Rstudio, работающего в среде Ubuntu 12.04 LTS?
Команды sourceCpp('./src/xyz.cpp')
выполняются так, как ожидается, ошибка возникает, когда Build and Reload
выполняется из среды RStudio.
Трудно сказать, не имея доступного пакета. Думаю, вы пропустите:
LinkingTo: Rcpp
в вашем файле DESCRIPTION.
Вы случайно начали с "Создать пакет" в RStudio? Если да, знаете ли вы, что вы, возможно, пропустили свой вариант сиблинга "Создать пакет w/Rcpp"?
Подробнее см. на странице Использование Rcpp с сайтом RStudio и, в частности, заключительный раздел по созданию пакета.
Я столкнулся с этим же симптомом (Rcpp.h: No such file or directory
) при попытке установить пакет "xml2" в системе Ubuntu 14. В моем случае первопричина оказалась плохой установкой пакета "Rcpp". Некоторые из файлов были там (Rcpp/libs), но другие не были (Rcpp/include). Я не уверен, как система попала в это состояние, но я подозреваю, что установка этого пакета завершена частично. Повторная установка пакета "Rcpp" разрешила мне проблему.
Это потому, что ваш GCC был обновлен, и он отличается от того, который был у вас при установке R. У меня была та же проблема.
Я удалил пакет "Rccp", используя:
remove.packages("Rcpp")
Затем вам нужно снова установить его. Просто запустите:
source("https://bioconductor.org/biocLite.R")
biocLite("Rcpp")