Подтвердить что ты не робот

Ошибка в R: (пакет, который доступен только в исходной форме и может потребоваться компиляция C/С++/Fortran)

Я пытаюсь установить пакеты "yaml" и "stringi" в R-Studio, и он продолжает давать мне следующие ошибки:

> install.packages("stringi")
Package which is only available in source form, and may need compilation of C/C++/Fortran: ‘stringi’
These will not be installed

или

> install.packages('yaml')
Package which is only available in source form, and may need compilation of C/C++/Fortran: ‘yaml’
These will not be installed

Как я могу их правильно установить?

4b9b3361

Ответ 1

Ошибка связана с тем, что R не может найти двоичную версию пакета в CRAN, вместо этого он находит только исходную версию пакета, а ваша установка Windows не может его скомпилировать. Обычно этого не происходит, но в данном случае это вызвано (временным) отключением некоторых зеркал в CRAN. Если вы введете:

> getOption('repos')
                                CRAN                            CRANextra 
           "http://cran.rstudio.com" "http://www.stats.ox.ac.uk/pub/RWin" 
attr(,"RStudio")
[1] TRUE

Вы увидите, что R использует "http://cran.rstudio.com" по умолчанию для поиска пакета для загрузки. Если вы видите веб-страницу с зеркалами кранов, вы можете увидеть вверху, что "http://cran.rstudio.com" фактически перенаправляет вас на разные серверы по всему миру (я полагаю, в соответствии с географическим положением).

Когда у меня возникла вышеуказанная проблема, я решил ее, вручную изменив репо на один из URL-адресов в указанной ссылке. Я предлагаю вам использовать другую страну (или даже континент) на случай, если вы получите вышеуказанную ошибку.

Ниже приведены некоторые URL-адреса в случае изменения ссылки выше:

  1. Бразилия http://nbcgib.uesc.br/mirrors/cran/
  2. Италия http://cran.mirror.garr.it/mirrors/CRAN/
  3. Япония http://cran.ism.ac.jp/
  4. Южная Африка http://r.adu.org.za/
  5. США https://cran.cnr.Berkeley.edu/

Вам нужно запустить функцию install.packages следующим образом:

install.packages('<package_name>', repo='http://nbcgib.uesc.br/mirrors/cran/')
#or any other url from the list or link

Один из них должен затем работать, чтобы установить двоичный файл из альтернативного зеркала.

Ответ 2

Вам нужно установить RTools для сборки таких пакетов (т. Е. Исходного пакета, а не двоичного). После установки Rtools попробуйте еще раз установить .packages install.packages("ggplot2") и R предложит вам:

Do you want to attempt to install these from source?
y/n:

(см. картинку ниже)

Вам нужно ответить y и он попытается скомпилировать пакет, чтобы его можно было установить.

enter image description here

Ответ 3

Боролся с этой проблемой сегодня, решил ее сейчас, сначала загрузив бинарный файл Windows, а затем установив, например,

install.packages("https://cran.r-project.org/bin/windows/contrib/3.3/stringi_1.1.1.zip", repos =NULL)

Просто зайдите на https://cran.r-project.org/, а затем на R Binaries/Windows/contrib и скопируйте URL-адрес в качестве аргумента для install.packages()

Ответ 4

Установите пакет из zip файла - загружаемый с веб-сайта r-проекта.

В основном R

  • перейти к пакетам
  • Установить пакеты из локальных файлов.

В RStudio

  • перейти к пакетам
  • Установить пакеты
  • Установить из файла архива пакета.

Ответ 5

У меня была эта проблема при использовании устаревшей версии R, поэтому двоичные файлы не были доступны. Простым решением было обновить мою версию R.