r — Rcpp: проблема со связью с файлами Shogun C ++

Я пишу пакет R и пытаюсь включить некоторые из функций Набор инструментов Shogun для машинного обучения. Я сначала включил папка сёгуна который содержит функции C ++ в /inst/include/ папка. Затем я добавил следующие утверждения в мой Makevars а также Makevars.win файлы:

PKG_CPPFLAGS =  -I../inst/include/

Затем я попытался проверить так в файле с именем test.cpp который я поместил в /srcи который включает в себя следующее:

#include <shogun/lib/config.h>

и я получаю ошибку: test.cpp: fatal error: shogun/lib/config.h: No such file or directory
compilation terminated.

Что я делаю неправильно?

0

Решение

Вы пытаетесь создать только заголовочный пакет из библиотеки, которая не только заголовок.

То есть в /inst/include/ у вас есть смесь .h а также .cpp, Чтобы исправить это, вы должны только сохранить .h файлы в /inst/include/, Храните копию .h а также .cpp вместе файлы в /src,

Лучший пакет для моделирования вашего пакета после RcppMLPACK1 с его использованием inst/include/, src/, определение менеджера плагинов, а также связывание плюс флаги cxx.

Однако вы можете просто захотеть создать пакет, который ссылается на системные библиотеки. например RcppMLPACK2. Этот пакет использует configure.ac, который хозяин autoconf чтобы генерировать configure чтобы обеспечить наличие необходимых путей. Примечание о расширениях autoconf в m4 каталог

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]