Сбой установки моего пакета R из GitHub при использовании функции devtools::install_github
, когда пакет находится в подкаталоге, а код C ++ находится в корневом каталоге.
Репозиторий можно найти здесь: https://github.com/Blunde1/gbtorch
Основная ветвь имеет код C ++, расположенный в папке пакета R. Однако, поскольку я хочу собрать пакет Python позже, имеет смысл переместить заголовочные файлы C ++ в корневой каталог. Я изменил это в новой ветке: https://github.com/Blunde1/gbtorch/tree/Restructuring-Header-Files
Локально, это работает после изменения файлов Makevars
с изменением PKG_CPPFLAGS = -I../inst/include
на PKG_CPPFLAGS = -I../../inst/include
Поэтому я предполагаю, что клон и ручная установка должны работать, ноЯ хочу, чтобы это было легко, и надеюсь, что установка с использованием devtools::install_github
будет возможна.
Я, скорее всего, ничего не знаю, так как это не новая проблема. Я исследовал (читай "googled") и обнаружил, что команда devtools действительно подумала об этом: https://github.com/r-lib/devtools/issues/64, что привело к аргументу subdir
в devtools::install_github
.
Здесь, похоже, проблемарешено, но все же, решение с subdir
не работает для меня:
Это работает: ветка master, C ++, находящаяся в папке R-пакета
devtools::install_github("Blunde1/gbtorch", ref="master", subdir = "R-package")
Это не удалось: новыйветвь разработки, код C ++ не находится в папке R-пакета
devtools::install_github("Blunde1/gbtorch", ref="Restructuring-Header-Files", subdir = "R-package")
Приведенная выше команда выдает следующую ошибку:
gbtorch.cpp:8:23: fatal error: gbtorch.hpp: No such file or directory
#include "gbtorch.hpp"
Если расположение заголовочных файловпуть не указан в файле Makevars
, тогда где? Возможно ли, что какой-нибудь файл configure
может сработать?
Есть идеи, как это исправить? Любая помощь по этому вопросу с благодарностью!