g++ не найден при использовании install_github

Пытаюсь установить r-пакет через github через devtools::install_github('package_name')

Я получаю следующую ошибку: sh: g++ не найден и ОШИБКА: не удалось выполнить компиляцию пакета 'package_name'

Вопрос: Что мне нужно сделать, чтобы иметь/найти g++?

=========================================================

Дополнительная информация:

  • ОС Windows 8.1
  • Р версия 4.1.0
  • инструменты для разработки версии 2.4.2
  • rtools 40 установлен (find_rtools() -> TRUE)

person Riktros    schedule 28.07.2021    source источник
comment
Взгляните на ответы здесь: stackoverflow.com/questions/39090983/   -  person iago    schedule 28.07.2021
comment
Я наткнулся на это решение, но я не думаю, что это мне поможет. Я нахожу файл «g++.exe» по адресу \rtools40\mingw64\bin, который используется по умолчанию в файле makeconfig.   -  person Riktros    schedule 28.07.2021
comment
(1) Попробуйте переместить (хотя бы временно) C:\RTools40 в C:\RTools, чтобы посмотреть, решит ли это проблему... Я видел некоторые пакеты с жестко закодированными предположениями о расположении компилятора. (2) Вероятно, было бы легче помочь вам с этим, если бы мы могли посмотреть на сам конкретный пакет: возможно, его make-файлы неверны, устарели или что-то еще. (3) К вашему сведению, для меня Sys.which("g++") ничего не возвращает (и это нормально), но установка компилируемых пакетов (из github) работает нормально. Для меня это C:\Rtools\mingw_64\bin\g++.exemingw_32).   -  person r2evans    schedule 28.07.2021
comment
Спасибо за ваш комментарий r2evans. Мне удалось временно решить проблему, изменив переменную PATH в r, чтобы включить каталог, в котором находится g++. Другими словами, запуская Sys.setenv(PATH = paste("C:\\rtools40\\mingw64\\bin", Sys.getenv("PATH"), sep=";"), я не ожидал, что это решит проблему, так как "C:\\rtools40\\mingw64\\bin" уже было в переменной PATH, просто оно не было первым. Я недостаточно знаю R, чтобы понять, почему это решило проблему, но это помогло.   -  person Riktros    schedule 28.07.2021
comment
Я предполагаю, что это не связано с R, а связано с этим пакетом. Рад, что это сработало, даже есть пластырь.   -  person r2evans    schedule 28.07.2021