Sys.which(‘make’) возвращает пустой вектор, что приводит к сбою установки пакета, созданного с помощью .cpp

#r #rtools

#r #rtools

Вопрос:

Я уже обновил r, rtools и rstudio. Но, похоже, его невозможно найти make.exe , пока C:rtools40usrbinmake.exe он существует.

 > find_rtools()
[1] TRUE
> Sys.which('make')
make 
  "" 
> R.Version()$version.string
[1] "R version 4.0.3 (2020-10-10)"
 

Rtools — это rtools40-x86_64.exe загружено с https://cran.r-project.org/bin/windows/Rtools /.
Все пакеты обновлены (Rstudio сказал мне об этом).

И когда я пытаюсь установить пакет, созданный с помощью Rcpp, он возвращает

 Warning in system(cmd) : 'make' not found
ERROR: compilation failed for package 'testpkg'
 

и установка завершается неудачно. Могу ли я как-нибудь с этим справиться?

Комментарии:

1. Ну, вероятно, проблема с вашим ПУТЕМ. Проверьте Sys.getenv("PATH") . Включает ли это C:\rtools40\usr\bin в себя ? Если нет, добавьте его в ПУТЬ. Смотрите эту документацию: cran.r-project.org/bin/windows/Rtools

2. О, это работает. Большое спасибо 🙂

3. но это работает только для этого конкретного сеанса. Как я могу установить его постоянно?