Написание пакета R, содержащего код C ++, в Eclipse / StatET

Я пытаюсь выяснить, как настроить Eclipse, чтобы я мог писать R-проекты и пакеты, которые также содержат код C ++.

Конечно, я мог бы создавать отдельные проекты R и C ++, компилировать код C ++, копировать проект .dll в R и использовать его в R с помощью функции dyn.load, но что если я хочу создать пакет R, содержащий исходные коды C ++? Я мог бы снова иметь отдельные проекты C ++ и R, поместить копии кодов C ++ в папку src моего пакета R, и я думаю, что использование компоновщика пакетов R в перспективе StatET будет работать правильно? Но мне интересно, могу ли я сделать только один проект пакета R и встроить код C ++ в этот проект, чтобы я получил преимущества перспективы C ++, т.е. цветовые кодировки кода и т. д.?

Я знаю, что кто-то упомянет Rcpp, но это не вариант здесь. Я пытаюсь выучить C ++ и как сложным образом сочетать его с R в первую очередь.

Я использую как Linux, так и Windows.

редактировать: просто чтобы уточнить, я хочу знать, как я могу настроить Eclipse так, чтобы он понимал оба кода R и C ++, то есть. оба кода имеют цветовое кодирование и т. д.

2

Решение

Я такой же поклонник войны редактора, как и все остальные, но вы меня не так поняли. Возьми то, что ты написал:

Я пытаюсь изучить C ++ и как сложным образом сочетать его с R
первый.

Так что внимательно прочитайте «Написание расширений R» и переделайте примеры. В командной строке. Тогда узнайте, как использовать Makefile.

Это о код и вызов компилятора. Пишете ли вы код в vi, Emacs или Eclipse, не имеет значения, если вы не понимаете, как вызывать компилятор или как писать свой код. Так что ваше намерение правильно: изучите эти основы.

После того, как вы справитесь со всем этим, вы готовы вставить соответствующие декларации в ваши конфигурации Eclipse / StatET.

(И если вы хотите обмануть, я мог бы указать вам на предоставленные файлы cmake в пакете RInside.)

2

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

Хорошо, похоже, что я плохо установил Eclipse, что вызвало некоторые проблемы. Ответ на мой вопрос заключается в том, что я могу работать в перспективе StatET, и он автоматически понимает код C ++, если расширение имени файла имеет форму .c или .cpp. Затем я могу скомпилировать код с помощью R CMD SHLIB или R CMD INSTALL, если код является частью какого-либо пакета.

0

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