J'essaye de réinstaller data.table avec:
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â
Et j'obtiens l'erreur de compilation suivante:
install.packages("data.table")
Le package que je reçois de cran est: data.table_1.12.0.tar.gz Ce qui devrait être une version qui fonctionne avec 3.5, contrairement aux problèmes avec data.table 1.10
Le système sur lequel il se trouve est RHEL 6.9 + J'ai également déjà mis à jour gcc via yum.
R les versions sont également up2date de yum: R-core-3.5.1-1.el6.x86_64
R-core-devel-3.5.1-1.el6.x86_64
Tout ce que j'ai pu trouver sur google pour cela était soit lié à Rtools (Windows), soit à l'ancienne version 1.10, cela semble être autre chose.
3 Réponses :
La ligne mentionnée dans le message d'erreur est:
#pragma omp atomic update
qui est une fonctionnalité qui n'est apparemment pas disponible dans GCC avant la version 4.7 et sur RedHat 6.9, la plus élevée que j'obtiens des dépôts standard est 4.4. 7 pour le moment.
Signifie que j'ai besoin d'un compilateur plus récent, qui peut gérer cette fonctionnalité openmp.
J'ai eu la même erreur lors de l'installation de data.table avec R 3.5.0
Sur un CentOS 6.10 (qui a gcc et g ++ version 4.4.7), voici comment j'ai pu installer data.table:
yum install devtoolset-6
scl enable devtoolset-6 bash
`which gcc` -v
, vous devriez voir une version supérieure de gcc R
install.packages ("data.table")
J'ai les mêmes versions de tout, mais cela n'a pas fonctionné pour moi. Ma version gcc reste la même.
Vous pouvez installer une ancienne version de data.table sur EL6. 1.11.4 fonctionne; Je ne suis pas sûr de ce que font les nouvelles versions, le cas échéant.
require(devtools) install_version("data.table", version = "1.11.4")
En savoir plus sur l'installation d'anciennes versions de packages: https://support.rstudio.com/hc/en-us/articles/219949047-Installing-older-versions-of-packages
p>
la version 1.11.8 fonctionne pour moi (mais pas la 1.12.0) en utilisant gcc 4.4.7
Pouvez-vous publier le message d'erreur complet?
C'est le message d'erreur complet, ci-dessus qui ne sont que quelques étapes de compilation qui ont réussi.