【问题标题】:Errors installing plyr / rcpp安装 plyr / rcpp 时出错
【发布时间】:2014-07-28 13:50:51
【问题描述】:

我有两台计算机,其中一台无法安装 R 的 plyr 包。 这是我得到的错误:

* installing *source* package ‘plyr’ ...
** package ‘plyr’ successfully unpacked and MD5 sums checked
** libs
g++ -I/usr/share/R/include -DNDEBUG   -I"/usr/lib/R/site-library/Rcpp/include"   -fpic  -O2 -pipe -g  -c RcppExports.cpp -o RcppExports.o
RcppExports.cpp: En la función ‘SEXPREC* plyr_loop_apply(SEXP, SEXP)’:
RcppExports.cpp:15:9: error: ‘input_parameter’ no es un miembro de ‘Rcpp::traits’
RcppExports.cpp:15:40: error: expected primary-expression before ‘int’
RcppExports.cpp:15:40: error: expected ‘;’ before ‘int’
RcppExports.cpp:16:9: error: ‘input_parameter’ no es un miembro de ‘Rcpp::traits’
RcppExports.cpp:16:49: error: expected primary-expression before ‘>’ token
RcppExports.cpp:16:50: error: ‘::type’ no se ha declarado
RcppExports.cpp:16:57: error: expected ‘;’ before ‘f’
RcppExports.cpp:17:36: error: ‘n’ no se declaró en este ámbito
RcppExports.cpp:17:39: error: ‘f’ no se declaró en este ámbito
RcppExports.cpp: En la función ‘SEXPREC* plyr_split_indices(SEXP, SEXP)’:
RcppExports.cpp:31:9: error: ‘input_parameter’ no es un miembro de ‘Rcpp::traits’
RcppExports.cpp:31:54: error: expected primary-expression before ‘>’ token
RcppExports.cpp:31:55: error: ‘::type’ no se ha declarado
RcppExports.cpp:31:62: error: expected ‘;’ before ‘group’
RcppExports.cpp:32:9: error: ‘input_parameter’ no es un miembro de ‘Rcpp::traits’
RcppExports.cpp:32:40: error: expected primary-expression before ‘int’
RcppExports.cpp:32:40: error: expected ‘;’ before ‘int’
RcppExports.cpp:33:65: error: ‘group’ no se declaró en este ámbito
RcppExports.cpp:33:72: error: ‘n’ no se declaró en este ámbito
make: *** [RcppExports.o] Error 1
ERROR: compilation failed for package ‘plyr’
* removing ‘/home/rgalhama/R/x86_64-pc-linux-gnu-library/2.15/plyr’
Warning in install.packages :
  installation of package ‘plyr’ had non-zero exit status

看起来包无法编译,但我不知道为什么。 在安装开始之前,我收到以下警告消息:

install.packages 中的警告:依赖项“Rcpp”不可用

我已经从系统安装了 rcpp(作为 sudo apt-get install r-cran-rcpp),因为我找不到从 R 安装它的方法:

install.packages("Rcpp", repos='http://cran.us.r-project.org') 安装包到 '/home/rgalhama/R/x86_64-pc-linux-gnu-library/2.15'(因为'lib'是 未指定) install.packages 中的警告:包'Rcpp'不是 可用(适用于 R 版本 2.15.2)

但我仍然不知道这些错误是否相关。

有什么想法吗?

谢谢!

【问题讨论】:

    标签: r plyr rcpp


    【解决方案1】:

    知道了!

    我的解决方案是:

    首先,更新 R:

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E084DAB9
    sudo sh -c "echo 'deb http://streaming.stat.iastate.edu/CRAN/bin/linux/ubuntu quantal/' >>  /etc/apt/sources.list" 
    sudo apt-get update 
    sudo apt-get install r-base r-base-dev
    

    然后从 R 安装 codetools 包:

    install.packages("codetools")
    

    之后,plyr的安装就很顺利了。

    【讨论】:

    • 你的第二步没有意义。 codetools 包已经是 r-base 包的一部分。但很高兴听到您现在可以使用它。
    • 它抱怨找不到它,并且在我安装它之后它工作。也许它不再是基础包的一部分了,不知道。
    • 它应该作为依赖项被引入。
    【解决方案2】:

    看起来你有一个旧版本:

    R 版本 2.15.2

    您可以随时尝试将 R 更新到最新版本。

    【讨论】:

    • 糟糕,我没注意到!我会试试的。谢谢!
    • 为了以后参考,我添加了更新R的代码: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E084DAB9 sudo sh -c "echo 'deb @987654321 @quantal/' >> /etc/apt/sources.list" sudo apt-get update sudo apt-get install r-base r-base-dev
    • 仍然看起来更新 R 是不够的。我设法安装了 Rcpp,但在安装 plyr 时我仍然遇到完全相同的错误:(
    • 很高兴您找到了更新您的 R 的 README。现在请确保您只安装了一个版本的 Rcpp -- 所以请确保您从(旧)Ubuntu 版本中删除了r-cran-rcpp
    【解决方案3】:

    我有一个非常相似的问题。安装 Debian/Ubuntu build-essential 包解决了我的问题:

    sudo apt-get install build-essential
    

    事实证明,如果没有安装编译器,R 就很难编译。

    【讨论】:

      【解决方案4】:

      在 Ubuntu 上尝试在 RStudio 中安装 plyr 时遇到类似问题后,我找到了以下解决方案:

      sudo apt-get install r-cran-plyr
      

      只是将它放在这里以帮助防止人们像我一样在找到可行的解决方案之前陷入相当大的困境。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-10-21
        • 1970-01-01
        • 2013-10-30
        • 1970-01-01
        • 2015-08-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多