R package data.table не удается установить / скомпилировать в системе с R 3.5.1 - PullRequest
0 голосов
/ 04 февраля 2019

Я пытаюсь переустановить data.table с:

install.packages("data.table")

И получаю следующую ошибку компиляции:

forder.c: In function ‘range_str’:
forder.c:296: error: expected end of line before ‘update’
make: *** [forder.o] Error 1
ERROR: compilation failed for package ‘data.table’

Пакет, который я получаю из кранаis: data.table_1.12.0.tar.gz Какой должна быть версия, которая работает с 3.5, в отличие от проблем с data.table 1.10

Система, на которой она включена, - RHEL 6.9 +Я также уже обновил gcc через yum.

R версии также up2date от yum: R-core-3.5.1-1.el6.x86_64 R-core-devel-3.5.1-1.el6.x86_64

Все, что я мог найти в Google для этого, было либо связано с Rtools (Windows)или более старая версия 1.10, это похоже на что-то еще.

Ответы [ 3 ]

0 голосов
/ 06 февраля 2019

У меня была такая же ошибка при установке data.table с R 3.5.0

На CentOS 6.10 (с gcc и g ++ версии 4.4.7), вот как я смог установить данные.таблица:

  1. yum install devtoolset-6
  2. scl enable devtoolset-6 bash
    сейчас, если вы сделаете: `which gcc` -v, вы должны увидеть более высокую версию gcc
  3. R
    для запуска R 3.5.0
  4. install.packages("data.table")
    теперь мне удалось установить data.table
0 голосов
/ 13 февраля 2019

Вы можете установить более старую версию data.table на EL6.1.11.4 работы;Я не уверен, что, если таковые имеются, более новые версии делают.

require(devtools)
install_version("data.table", version = "1.11.4")

Подробнее об установке более старых версий пакетов: https://support.rstudio.com/hc/en-us/articles/219949047-Installing-older-versions-of-packages

0 голосов
/ 05 февраля 2019

В сообщении об ошибке упоминается строка:

#pragma omp atomic update

, которая, по-видимому, недоступна в GCC до версии 4.7, а в RedHat 6.9 наивысшее значение, которое я получаю из стандартных репозиториев, составляет 4.4.7 примомент.

Означает, что мне нужен более новый компилятор, который может обрабатывать эту функциональность openmp.

...