Lubridate: Impossible d'installer le package de lubrification dans R

Créé le 19 juin 2018  ·  5Commentaires  ·  Source: tidyverse/lubridate

J'utilise la version R 3.5, tout en essayant d'installer le package lubridate dans rstudio, il renvoie une erreur comme suit

install.packages("lubrifier")
Installation du paquet dans '/home/Arun/R/x86_64-redhat-linux-gnu-library/3.5'
(car 'lib' n'est pas spécifié)
essayer l'URL ' https://cran.rstudio.com/src/contrib/lubridate_1.7.4.tar.gz '

Type de contenu 'application/x-gzip' longueur 449850 octets (439 Ko)

téléchargé 439 Ko

  • installer le paquet
    * package 'lubridate' déballé avec succès et sommes MD5 vérifiées* bibliothèques
    g++ -m64 -std=gnu++0x -I"/usr/include/R" -DNDEBUG -I. -I./cctz/include/ -I./cctz/src/ -I"/usr/lib64/R/library/Rcpp/include" -I/usr/local/include -fpic -O2 -g -pipe -Mur -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c RcppExports.cpp -o RcppExports.o
    gcc -m64 -std=gnu99 -I"/usr/include/R" -DNDEBUG -I. -I./cctz/include/ -I./cctz/src/ -I"/usr/lib64/R/library/Rcpp/include" -I/usr/local/include -fpic -O2 -g -pipe -Mur -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fpic -fPIC -c datetime.c -o datetime.o
    gcc -m64 -std=gnu99 -I"/usr/include/R" -DNDEBUG -I. -I./cctz/include/ -I./cctz/src/ -I"/usr/lib64/R/library/Rcpp/include" -I/usr/local/include -fpic -O2 -g -pipe -Mur -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fpic -fPIC -c period.c -o period.o
    gcc -m64 -std=gnu99 -I"/usr/include/R" -DNDEBUG -I. -I./cctz/include/ -I./cctz/src/ -I"/usr/lib64/R/library/Rcpp/include" -I/usr/local/include -fpic -O2 -g -pipe -Mur -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -fpic -fPIC -c tparse.c -o tparse.o
    g++ -m64 -std=gnu++0x -I"/usr/include/R" -DNDEBUG -I. -I./cctz/include/ -I./cctz/src/ -I"/usr/lib64/R/library/Rcpp/include" -I/usr/local/include -fpic -O2 -g -pipe -Mur -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -c update.cpp -o update.o
    Dans le fichier inclus de ./cctz/include/civil_time.h:18,
    de update.cpp:4 :
    ./cctz/include/civil_time_detail.h:37 : erreur : spécificateur de nom imbriqué attendu avant 'year_t'
    ./cctz/include/civil_time_detail.h:37 : erreur : 'year_t' n'a pas été déclaré
    ./cctz/include/civil_time_detail.h:37 : erreur : ';' attendu avant '=' jeton
    ./cctz/include/civil_time_detail.h:37 : erreur : id non qualifié attendu avant le jeton '='
    ./cctz/include/civil_time_detail.h:41 : erreur : spécificateur de nom imbriqué attendu avant 'diff_t'
    ./cctz/include/civil_time_detail.h:41 : erreur : 'diff_t' n'a pas été déclaré
    ./cctz/include/civil_time_detail.h:41 : erreur : ';' attendu avant '=' jeton
    ./cctz/include/civil_time_detail.h:41 : erreur : id non qualifié attendu avant le jeton '='
    ./cctz/include/civil_time_detail.h:46 : erreur : spécificateur de nom imbriqué attendu avant 'month_t'
    ./cctz/include/civil_time_detail.h:46 : erreur : 'month_t' n'a pas été déclaré
    ./cctz/include/civil_time_detail.h:46 : erreur : ';' attendu avant '=' jeton
    ./cctz/include/civil_time_detail.h:46 : erreur : id non qualifié attendu avant le jeton '='
    ./cctz/include/civil_time_detail.h:47 : erreur : spécificateur de nom imbriqué attendu avant 'day_t'
    ./cctz/include/civil_time_detail.h:47 : erreur : 'day_t' n'a pas été déclaré
    ./cctz/include/civil_time_detail.h:47 : erreur : ';' attendu avant '=' jeton
    ./cctz/include/civil_time_detail.h:47 : erreur : id non qualifié attendu avant le jeton '='
    ./cctz/include/civil_time_detail.h:48 : erreur : spécificateur de nom imbriqué attendu avant 'hour_t'
    ./cctz/include/civil_time_detail.h:48 : erreur : 'hour_t' n'a pas été déclaré
    ./cctz/include/civil_time_detail.h:48 : erreur : ';' attendu avant '=' jeton
    ./cctz/include/civil_time_detail.h:48 : erreur : id non qualifié attendu avant le jeton '='
    ./cctz/include/civil_time_detail.h:49 : erreur : spécificateur de nom imbriqué attendu avant 'minute_t'
    ./cctz/include/civil_time_detail.h:49 : erreur : 'minute_t' n'a pas été déclaré
    ./cctz/include/civil_time_detail.h:49 : erreur : ';' attendu avant '=' jeton
    ./cctz/include/civil_time_detail.h:49 : erreur : id non qualifié attendu avant le jeton '='
    ./cctz/include/civil_time_detail.h:50 : erreur : spécificateur de nom imbriqué attendu avant 'second_t'
    ./cctz/include/civil_time_detail.h:50 : erreur : 'second_t' n'a pas été déclaré
    ./cctz/include/civil_time_detail.h:50 : erreur : ';' attendu avant '=' jeton
    ./cctz/include/civil_time_detail.h:50 : erreur : id non qualifié attendu avant le jeton '=
    ./cctz/include/civil_time_detail.h:54 : erreur : ')' attendu avant 'année'
    ./cctz/include/civil_time_detail.h:78 : erreur : 'cctz::detail::impl::is_leap_year' déclaré comme variable 'inline'
    ./cctz/include/civil_time_detail.h:78 : erreur : 'year_t' n'a pas été déclaré dans cette étendue
    ./cctz/include/civil_time_detail.h:78 : erreur : ',' ou ';' attendu avant 'noexcept'
    ./cctz/include/civil_time_detail.h:81 : erreur : 'cctz::detail::impl::year_index' déclaré comme variable 'inline'
    ./cctz/include/civil_time_detail.h:81 : erreur : 'year_t' n'a pas été déclaré dans cette étendue
    ./cctz/include/civil_time_detail.h:81 : erreur : 'month_t' n'a pas été déclaré dans cette étendue
    ./cctz/include/civil_time_detail.h:81 : erreur : liste d'expressions d'initialisation traitée comme une expression composée
    ./cctz/include/civil_time_detail.h:81 : erreur : ',' ou ';' attendu avant 'noexcept'
    ./cctz/include/civil_time_detail.h:84 : erreur : 'cctz::detail::impl::days_per_century' déclaré comme variable 'inline'
    ./cctz/include/civil_time_detail.h:84 : erreur : 'year_t' n'a pas été déclaré dans cette étendue
    ./cctz/include/civil_time_detail.h:84 : erreur : 'month_t' n'a pas été déclaré dans cette étendue
    ./cctz/include/civil_time_detail.h:84 : erreur : liste d'expressions d'initialisation traitée comme une expression composée
    ./cctz/include/civil_time_detail.h:84 : erreur : ',' ou ';' attendu avant 'noexcept'
    ./cctz/include/civil_time_detail.h:88 : erreur : 'cctz::detail::impl::days_per_4years' déclaré comme variable 'inline'
    ./cctz/include/civil_time_detail.h:88 : erreur : 'year_t' n'a pas été déclaré dans cette étendue
    ./cctz/include/civil_time_detail.h:88 : erreur : 'month_t' n'a pas été déclaré dans cette étendue
    ./cctz/include/civil_time_detail.h:88 : erreur : liste d'expressions d'initialisation traitée comme une expression composée
    ./cctz/include/civil_time_detail.h:88 : erreur : ',' ou ';' attendu avant 'noexcept'
    ./cctz/include/civil_time_detail.h:92 : erreur : 'cctz::detail::impl::days_per_year' déclaré comme variable 'inline'
    ./cctz/include/civil_time_detail.h:92 : erreur : 'year_t' n'a pas été déclaré dans cette étendue
    ./cctz/include/civil_time_detail.h:92 : erreur : 'month_t' n'a pas été déclaré dans cette étendue
    ./cctz/include/civil_time_detail.h:92 : erreur : liste d'expressions d'initialisation traitée comme une expression composée
    ./cctz/include/civil_time_detail.h:92 : erreur : ',' ou ';' attendu avant 'noexcept'
    ./cctz/include/civil_time_detail.h:95 : erreur : 'cctz::detail::impl::days_per_month' déclaré comme variable 'inline'
    ./cctz/include/civil_time_detail.h:95 : erreur : 'year_t' n'a pas été déclaré dans cette étendue
    ./cctz/include/civil_time_detail.h:95 : erreur : 'month_t' n'a pas été déclaré dans cette étendue
    ./cctz/include/civil_time_detail.h:95 : erreur : liste d'expressions d'initialisation traitée comme une expression composée
    ./cctz/include/civil_time_detail.h:95 : erreur : attendu ',' ou ';' avant 'noexcept'
    Dans le fichier inclus depuis /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/f onctional:56 ,
    depuis /usr/lib64/R/library/Rcpp/include/RcppCommon.h:70,
    depuis /usr/lib64/R/library/Rcpp/include/Rcpp.h:27,
    de la mise à jour. cpp:7 :
    /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ typeinfo:36 : erreur : attendu '}' avant la fin de ligne
    /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ typeinfo:36 : erreur : attendu '}' avant la fin de ligne
    /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ typeinfo:36 : erreur : attendu '}' avant la fin de ligne
    /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ typeinfo:36 : erreur : déclaration attendue avant la fin de la ligne
    make : * [update.o] Erreur 1
    ERREUR : la compilation a échoué pour le package 'lubridate'
  • suppression de '/home/Arun/R/x86_64-redhat-linux-gnu-library/3.5/lubridate'
    Avertissement dans install.packages :l'installation du package 'lubridate' avait un statut de sortie différent de zéro

Les packages sources téléchargés sont dans
'/tmp/RtmpSIz8vF/downloaded_packages'

Veuillez aider quelqu'un à résoudre ce problème
Merci d'avance

Commentaire le plus utile

Voici ce que je fais sur CentOS 6.9 afin d'installer la dernière version de lubridate qui nécessite une version de gcc ultérieure à celle fournie avec CentOS 6.9.

  1. Installer devtoolset-3
    sudo yum installer centos-release-scl-rh
    sudo yum installer devtoolset-3-gcc devtoolset-3-gcc-c++ devtoolset-3-gcc-gfortran

  2. Démarrez un nouveau shell bash avec devtoolset-3 activé (car les étapes ci-dessus ne remplacent pas le gcc par défaut)
    scl activer devtoolset-3 bash

  3. À partir de ce shell, exécutez à nouveau votre code R et le package de lubrification sera téléchargé et compilé avec succès dans votre bibliothèque.

Lorsque vous revenez à votre shell normal, sans le devtoolset-3 activé, vous pourrez toujours exécuter votre code R car le package sera déjà compilé, tant que vous utilisez le même répertoire de bibliothèque.

Tous les 5 commentaires

Idem ici je n'arrive pas à l'installer sur debian:stretch

Vous avez besoin d'une version plus récente de gcc (4.8.0, mieux 4.9.0). Il y a plusieurs problèmes sur ce tracker avec un problème similaire. Certains d'entre eux ont des orientations concrètes (certes techniques).

Vous pouvez également installer une ancienne version. Testé sur mon CentOS 6.9 :

wget https://github.com/tidyverse/lubridate/archive/v1.6.0.tar.gz
sudo R CMD INSTALL v1.6.0.tar.gz

J'ai essayé la commande ci-dessous et cela fonctionne bien
wget https://github.com/tidyverse/lubridate/archive/v1.6.0.tar.gz
sudo R CMD INSTALL v1.6.0.tar.gz

Voici ce que je fais sur CentOS 6.9 afin d'installer la dernière version de lubridate qui nécessite une version de gcc ultérieure à celle fournie avec CentOS 6.9.

  1. Installer devtoolset-3
    sudo yum installer centos-release-scl-rh
    sudo yum installer devtoolset-3-gcc devtoolset-3-gcc-c++ devtoolset-3-gcc-gfortran

  2. Démarrez un nouveau shell bash avec devtoolset-3 activé (car les étapes ci-dessus ne remplacent pas le gcc par défaut)
    scl activer devtoolset-3 bash

  3. À partir de ce shell, exécutez à nouveau votre code R et le package de lubrification sera téléchargé et compilé avec succès dans votre bibliothèque.

Lorsque vous revenez à votre shell normal, sans le devtoolset-3 activé, vous pourrez toujours exécuter votre code R car le package sera déjà compilé, tant que vous utilisez le même répertoire de bibliothèque.

Cette page vous a été utile?
0 / 5 - 0 notes