R: Ошибка компиляции "ISO C++ запрещает инициализацию в классе неконстантного статического члена" при установке пакета пера
Я использую R версии 3.1.2 и хочу установить пакет "перо" в RStudio:
install.packages("feather", type="source")
Использование исходной версии, потому что, кажется, нет двоичной версии.
Он извлекает файл и правильно проверяет суммы MD5, но выдает ошибки для нескольких подэтапов:
error: ISO C++ forbids in-class initialization of non-const static member 'xy'
Вот выдержка из того, что именно RStudio говорит мне:
из c:\users...\r\win-library\3.1\rtools\gcc-4.6.3\bin../lib/gcc/i686-w64-mingw32/4.6.3/../../../../include/c++/4.6.3/algorithm:63,
от./feather/buffer.h:18,
от./feather/metadata.h:23,
от./feather/reader.h:21,
из пера /feather-c.cc:21:
C: \ Users... \ г \ беспроигрышная библиотека \ 3.1 \ rtools \ GCC-4.6.3 \ бен../ Библиотека / GCC /i686-w64-mingw32/4.6.3/../../../../include/c++/4.6.3/limits:196:57: ошибка: ISO C++ запрещает инициализацию в классе неконстантного статического члена 'is_specialized'
C: \ Users... \ г \ беспроигрышная библиотека \ 3.1 \ rtools \ GCC-4.6.3 \ бен../ Библиотека / GCC /i686-w64-mingw32/4.6.3/../../../../include/c++/4.6.3/limits:201:48: ошибка: ISO C++ запрещает инициализацию в классе неконстантного статического члена "цифры"
C: \ Users... \ г \ беспроигрышная библиотека \ 3.1 \ rtools \ GCC-4.6.3 \ бен../ Библиотека / GCC /i686-w64-mingw32/4.6.3/../../../../include/c++/4.6.3/limits:204:50: ошибка: ISO C++ запрещает инициализацию в классе неконстантного статического члена digits10
...(для многих других частей)...
(также для некоторых:)
C: \ Users... \ г \ беспроигрышная библиотека \ 3.1 \ rtools \ GCC-4.6.3 \ бен../ Библиотека / GCC /i686-w64-mingw32/4.6.3/../../../../include/c++/4.6.3/limits:1587:58: примечание: 'bool std::numeric_limits::has_quiet_NaN' не является константой
(а также:)
C: \ Users... \ г \ беспроигрышная библиотека \ 3.1 \ rtools \ GCC-4.6.3 \ бен../ Библиотека / GCC /i686-w64-mingw32/4.6.3/../../../../include/c++/4.6.3/limits:1607:51: ошибка: значение 'std::numeric_limits::has_infinity' не может использоваться в константном выражении
(тогда некоторые:)
C: \ Users... \ г \ беспроигрышная библиотека \ 3.1 \ rtools \ GCC-4.6.3 \ бен../ Библиотека / GCC /i686-w64-mingw32/4.6.3/../../../../include/c++/4.6.3/bits/random.tcc:345:7: ошибка: '_M_x' не было объявлено в этой области
(и наконец:)
смущен более ранними ошибками, спасением
сделать: *** [Перо / Перо-Ко] Ошибка 1
Предупреждение: Ausführung von Kommando 'make -f "Makevars" -f "C:/PROGRA~1/R/R-31~1.2/etc/i386/Makeconf" -f "C:/PROGRA~1/R/R-31~1.2. '$(SHLIB_CXX1XLD)' SHLIB="feather.dll" OBJECTS="RcppExports.o feather-read.o feather-types.o feather-write.o"' ergab Status 2
ОШИБКА: ошибка компиляции для пакета 'feather'
* удаление "C:/Users/.../R/win-library/3.1/feather"
* восстановление предыдущего 'C:/Users/.../R/win-library/3.1/feather'
Предупреждение в install.packages:
запустив команду '"C:/PROGRA~1/R/R-31~1.2/bin/x64/R" CMD INSTALL -l "C:\Users...\R\win-library\3.1" C:\Users...\AppData\LocalTemp\RtmpKsxa73/loaded_packages/feather_0.3.2.tar.gz'имеет статус 1
Предупреждение в install.packages:
установка пакета "перо" имела ненулевой статус выхода
Я хотел установить пух-пакет через CRAN. Это не работает в RStudio и не работает в консоли R. Запуск этого на Windows 8.1.
У кого-нибудь есть идея, почему это не установить?
Для меня проблема лежит где-то с пакетом?
Или это может быть проблема с авторизацией (у меня нет прав администратора с моим пользователем, но я могу установить все что угодно в C:\Users\my_user)
1 ответ
Эта особая языковая функция впервые была поддержана в GCC 4.7. У вас есть GCC 4.6.3.
Вам нужно будет приобрести более новую установку GCC или Clang. Если я правильно прочитал сообщение об ошибке, вы получили свой GCC от RTools 3.1. Глядя на страницу проекта для Rtools, Rtools 3.3 и выше по умолчанию до GCC 4.9 и выше, который должен поддерживать код, используемый вашим feather
расширение.