Короче говоря, это предупреждения и , а не ошибки.Более того, эти предупреждения не не имеют значение.
Давайте поговорим о том, что означает каждое предупреждение ...
Первое предупреждение
configure: ПРЕДУПРЕЖДЕНИЕ: компилятор идентифицирует себя как совместимый с расширениями GNUCно не g ++.
Это означает, что компилятор, определенный в переменной CXX
файла Makevars
, равен , идентифицируя как gcc
, но не компилятор gcc
.По сути, каждый компилятор имеет свой собственный предопределенный заголовок, см. Раздел 3.7.2 Общие предопределенные макросы из Препроцессор C , и эта проверка направлена на проверку того, что современный gcc
компиляторвыбран.Тем не менее, трудно проверить наличие компилятора, если компилятор лжет о том, кто он.
Подробнее о происхождении см. Обсуждение в выпуске Добавление сообщения проверки успешности в конфигурации после g++ проверка версии # 183 и принятие сообщения по умолчанию в тесте g ++ ).
Второе предупреждение
configure: ПРЕДУПРЕЖДЕНИЕ: некоторые сложные-значные функции LAPACK могут быть недоступны
В этом предупреждении есть жалоба на то, что базовый пакет линейной алгебры является тем же, который поставляется с R .К сожалению, LAPACK, который поставляется с R , строго ограничен и немного устарел.Итак, проверка здесь надеется на наличие внешнего LAPACK через OpenBLAS, Intel MKL или ATLAS.Из-за того, как эта проверка структурирована, если вы не компилируете R из исходного кода - то есть вы решаете не использовать двоичный файл, предоставленный CRAN - нет способа избежать сбоя.
Проще говоря, двоичный файл CRAN ищет LAPACK в определенном месте.Переключение на другой LAPACK потребовало бы установления символической ссылки на существующее местоположение lRlapack, то есть то, что проверка ищет для .Хотя не рекомендуется делать такую символическую ссылку.(Извините, любители vecLib!)
Если вы заинтересованы в компиляции из источника, рассмотрите просмотр Раздел A.3 Линейная алгебра из R Установка и администрирование , в котором описываетсяпроцедура использования внешних LAPACK.