Rstudio не может установить devtools lib из-за опечатки в имени файла библиотеки ссылок gcc. Где хранятся имена файлов ссылок?
На сервере Rstudio в Ubuntu 16 пакет devtools не удается установить из-за сбоя сборки пакета. Это имеет большое влияние и является большой головной болью, потому что тоннам других пакетов требуется devtools, и, кроме того, эта конкретная библиотека с ошибками необходима для компиляции многими другими числовыми пакетами.
Мы видим, что проблема в том, что gcc каким-то образом передается имя файла для ссылки с простой опечаткой. Где будет файл конфигурации, который будет содержать опечатку, чтобы я мог вручную исправить написание файла? Вы видите это ниже? (Это отрывок из вывода в Rstudio при установке пакета devtools, который автоматически запускает программу gcc.) GCC пытается подключиться к подсистеме базовой линейной алгебры научной библиотеки Gnu:
gcc -std=gnu99 -shared -L/usr/lib/R/lib -L/usr/lib/x86_64-linux-gnu -lgsl -lglscblas -o mime.so rawmatch.o -L/usr/lib/x86_64-linux-gnu -L/usr/lib/R/lib -lR
/usr/bin/ld: cannot find -lglscblas
Конечно, в имени файла должно быть указано gsclblas (для научной библиотеки GNU), а не glscblas - RStudio, очевидно, получила букву L в неправильной позиции. Нет такого файла как glscblas.*
Итак, как я уже сказал, где будет файл конфигурации, который будет содержать опечатку, чтобы я мог вручную исправить орфографию? Я не набрал опечатку: она пришла из rstudio или какой-то другой программы.
Большое спасибо за хорошую информацию об этом, если у вас есть. До сих пор это было за пределами моей возможности найти файл, несмотря на поиск с помощью grep множеством способов, копанием в Rstudio GUI и поиском по URL-адресам, таким как https://support.rstudio.com/hc/en-us/articles/205612627-Debugging-with-RStudio
2 ответа
Это почти всегда берется из src/Makevars
файл пакета, который вы пытаетесь собрать. Пакет devtools не имеет ничего общего с RStudio. Вы, вероятно, получите ту же ошибку через R CMD INSTALL package_1.2-3.tar.gz
,
Теперь GitHub позволяет нам искать код для всех пакетов CRAN (поскольку они там отображаются), но я не могу найти эту строку.
Не могли бы вы поделиться с каким пакетом это было, чтобы приблизить нас к минимально воспроизводимому примеру?
Решением было отредактировать файл ~/.R/Makevars
Это была сложная часть на самом деле. Нахождение где это было. Следующий...
Я просто полностью удалил оскорбительный аргумент, который содержал имя файла с ошибкой. Причина в том, что это нормально, потому что библиотеки BLAS могут ускорять математику, но, как правило, являются необязательными, а не обязательными. В любом случае, у меня также есть более быстрые, чем у GNU.
Спасибо всем, кто пытался остаться в теме и не получить здесь слишком много рекламы!