Опции при компиляции R кода

Я обычно просто копировать-вставить (или source(..)) мой код R на консоли, так что компиляция в R мне очень неясна.

При компиляции кода C++ можно указывать компилятору (например, #define или же #pragma например) или конкретный флаг для указания уровня оптимизации (например, -o2 например).

Есть ли эквивалент #InfoForCompiler или же -o2 в R? Можно ли сделать конкретный выбор относительно того, как и когда (при определении функции или при первом вызове функции) компилируется R-код?

1 ответ

Решение

Какой бы способ вы не выбрали для компиляции, R CMD COMPILE в R CMD INSTALL за пакет или через что-то вроде Rcpp::sourceCpp(), он всегда будет вызываться самим R и

  • R уважать переменные среды, такие как CXXFLAGS
  • R ищет свои значения в $RHOME/etc/Makeconf (в системах Debian также в /etc/R/Makeconf
  • Они могут быть переопределены через ~/.R/Makeconf для каждого пользователя.

Но, как прокомментировал @nrussell, это не повлияет на ваш уже скомпилированный интерпретатор R, а только на добавочные новые компиляции - например, установки пакетов.

Чтобы изменить это для самого R, вы должны существенно перестроить R из исходного кода.

Другие вопросы по тегам