Dependency issue while installing caret package in

2020-07-06 04:13发布

问题:

I am trying to install R package caret

Which gives me ERROR: dependencies ‘ggplot2’, ‘reshape2’, ‘BradleyTerry2’ are not available for package ‘caret’

I tried to install each of this individually, which again shows installation going on, ending with message that installation of package ‘X’ had non-zero exit status

1: In install.packages("caret") :
  installation of package ‘minqa’ had non-zero exit status
2: In install.packages("caret") :
  installation of package ‘RcppEigen’ had non-zero exit status
3: In install.packages("caret") :
  installation of package ‘scales’ had non-zero exit status
4: In install.packages("caret") :
  installation of package ‘reshape2’ had non-zero exit status
5: In install.packages("caret") :
  installation of package ‘lme4’ had non-zero exit status
6: In install.packages("caret") :
  installation of package ‘ggplot2’ had non-zero exit status
7: In install.packages("caret") :
  installation of package ‘BradleyTerry2’ had non-zero exit status
8: In install.packages("caret") :
  installation of package ‘caret’ had non-zero exit status

Ask recursively to install some package. What is the issue?

I had older version, where I was getting similar error. I removed and installed latest. Currently version is R version 3.1.2 (2014-10-31) -- "Pumpkin Helmet", but still getting similar error message

UPDATE

STarted with : install.packages('caret', repos='http://cran.rstudio.com/') which displays message:

Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
also installing the dependencies ‘minqa’, ‘RcppEigen’, ‘scales’, ‘lme4’, ‘ggplot2’, ‘reshape2’, ‘BradleyTerry2’

and process ends with :

installing to /usr/local/lib/R/site-library/reshape2/libs
** R
** data
*** moving datasets to lazyload DB
** inst
** preparing package for lazy loading
Error : package ‘stringr’ was built before R 3.0.0: please re-install it
ERROR: lazy loading failed for package ‘reshape2’
* removing ‘/usr/local/lib/R/site-library/reshape2’
ERROR: dependencies ‘minqa’, ‘RcppEigen’ are not available for package ‘lme4’
* removing ‘/usr/local/lib/R/site-library/lme4’
ERROR: dependencies ‘reshape2’, ‘scales’ are not available for package ‘ggplot2’
* removing ‘/usr/local/lib/R/site-library/ggplot2’
ERROR: dependency ‘lme4’ is not available for package ‘BradleyTerry2’
* removing ‘/usr/local/lib/R/site-library/BradleyTerry2’
ERROR: dependencies ‘ggplot2’, ‘reshape2’, ‘BradleyTerry2’ are not available for package ‘caret’
* removing ‘/usr/local/lib/R/site-library/caret’

The downloaded source packages are in
    ‘/tmp/RtmpcLo8Rw/downloaded_packages’
Warning messages:
1: In install.packages("caret", repos = "http://cran.rstudio.com/") :
  installation of package ‘minqa’ had non-zero exit status
2: In install.packages("caret", repos = "http://cran.rstudio.com/") :
  installation of package ‘RcppEigen’ had non-zero exit status
3: In install.packages("caret", repos = "http://cran.rstudio.com/") :
  installation of package ‘scales’ had non-zero exit status
4: In install.packages("caret", repos = "http://cran.rstudio.com/") :
  installation of package ‘reshape2’ had non-zero exit status
5: In install.packages("caret", repos = "http://cran.rstudio.com/") :
  installation of package ‘lme4’ had non-zero exit status
6: In install.packages("caret", repos = "http://cran.rstudio.com/") :
  installation of package ‘ggplot2’ had non-zero exit status
7: In install.packages("caret", repos = "http://cran.rstudio.com/") :
  installation of package ‘BradleyTerry2’ had non-zero exit status
8: In install.packages("caret", repos = "http://cran.rstudio.com/") :
  installation of package ‘caret’ had non-zero exit status

回答1:

As the caret Documentation suggests execute install.packages("caret", dependencies = c("Depends", "Suggests")) to ensure that all the needed packages are installed and resolve all the dependencies



回答2:

I have similar issue when I installed caret package. The problem I found was caused by updating package dependency. Updating some packages will also change their dependency that may not have the right version for later use in other packages. Like when I install caret, it shown:

Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) : there is no package called minqa?

The solution I found is to first find which package cause the problem. You can get this information by just install the package you want. For me, the one is "minqa". So just install this package independently.

install.packages("minqa")

My problem solved by this way.

For you, you need to install "‘minqa’, ‘RcppEigen’, ‘scales’, ‘lme4’, ‘ggplot2’, ‘reshape2’, ‘BradleyTerry2’" one by one.



回答3:

I faced similar dependencies issues while trying to install caret on R:

> install.packages("caret", contriburl = "file:///usr/repo_AO/CRAN/")
ERROR: dependency ‘car’ is not available for package ‘caret’

> install.packages("car", contriburl = "file:///usr/repo_AO/CRAN/")
Installing package into ‘/usr/share/R/library-users’
(as ‘lib’ is unspecified)
Warning message:
package ‘car’ is not available (for R version 3.1.2) 

'car' package is for >= R 3.2
> R.version                
version.string R version 3.1.2 (2014-10-31)

I found that 'caret' didn't ask anymore for dependencies once I installed from O.S. an older 'car' version from R-car-2.0_21-1.8.x86_64.rpm package:

$ sudo yum install --nogpgcheck R-car-2.0_21-1.8.x86_64.rpm
Setting up Install Process
Examining R-car-2.0_21-1.8.x86_64.rpm: R-car-2.0_21-1.8.x86_64
Marking R-car-2.0_21-1.8.x86_64.rpm to be installed
Resolving Dependencies
--> Running transaction check
---> Package R-car.x86_64 0:2.0_21-1.8 will be installed
--> Finished Dependency Resolution
---8<---
Installed:
  R-car.x86_64 0:2.0_21-1.8                                                              
    Complete!

Then:

    > install.packages("caret", contriburl = "file:///usr/repo_AO/CRAN/")
    Installing package into ‘/usr/share/R/library-users’
    (as ‘lib’ is unspecified)
    also installing the dependency ‘ggplot2’
    * installing *source* package ‘ggplot2’ ...
    ** package ‘ggplot2’ successfully unpacked and MD5 sums checked
    ----8<----
    ** building package indices
    ** installing vignettes
    ** testing if installed package can be loaded
    * DONE (ggplot2)
    * installing *source* package ‘caret’ ...
    ** package ‘caret’ successfully unpacked and MD5 sums checked
    ** libs
    gcc -m64 -std=gnu99 -I/usr/include/R -DNDEBUG  -I/usr/local/include    -fpic  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic  -c caret.c -o caret.o
    gcc -m64 -std=gnu99 -shared -L/usr/lib64/R/lib -L/usr/local/lib64 -o caret.so caret.o -L/usr/lib64/R/lib -lR
    installing to /usr/share/R/library-users/caret/libs
    ----8<----
    ** testing if installed package can be loaded
    * DONE (caret)

(*) I used a local repository 'cause there is not direct internet connection, but repo location is irrelevant.



回答4:

  • At Linux Mint 17.3 KDE "Rosa" (64 bit) , x86_64-pc-linux-gnu,
  • After install R version 3.3.0 (2016-05-03) -- "Supposedly Educational".

I had similar problems with several packages (car, vegan, psych,...). It was solved by running in the command line (Terminal):

sudo apt-get install r-base-dev

R

> install.packages("car")

Suerte!



回答5:

I had a similar issue. I used

install.packages("caret", dependencies = c("Depends"), repos='http://cran.rstudio.com/')
and got
ERROR: dependency 'car' is not available for package 'caret'
Installing car separately via R did not work but with package manager of my distro (Fedora)
dnf install R-car

Then the first command was successfull.



回答6:

I had also similar issue with caret package installation.

I use Linux Mint 17.3 Cinnamon 64-bit:

  • R version 3.3.0 (2016-05-03)
  • Platform: x86_64-pc-linux-gnu (64-bit)
  • Running under: Ubuntu 14.04.4 LTS

First caret installation with the command

install.packages('caret', repos='http://cran.rstudio.com/')

gave the error messages as follows ...

* installing *source* package ‘minqa’ ...
** package ‘minqa’ successfully unpacked and MD5 sums checked
** libs
gfortran   -fpic  -g -O2 -fstack-protector --param=ssp-buffer-size=4  -c altmov.f -o altmov.o
/bin/bash: gfortran: command not found
make: *** [altmov.o] Error 127
ERROR: compilation failed for package ‘minqa’
* removing ‘/home/myusername/R/x86_64-pc-linux-gnu-library/3.3/minqa’
Warning in install.packages :
  installation of package ‘minqa’ had non-zero exit status
* installing *source* package ‘RcppEigen’ ...
** package ‘RcppEigen’ successfully unpacked and MD5 sums checked
** libs

...

/usr/bin/ld: cannot find -llapack
/usr/bin/ld: cannot find -lblas
/usr/bin/ld: cannot find -lgfortran
collect2: error: ld returned 1 exit status
make: *** [RcppEigen.so] Error 1
ERROR: compilation failed for package ‘RcppEigen’

...

Then I tried to run

install.packages("RcppEigen")

But it didn't work and gave same errors about llapack etc. Next I ran on the linux command line:

sudo apt-get install liblapack-dev

(this install necessary libraries)

And after that the command

install.packages("RcppEigen") 

worked very well and so did also

install.packages('caret', repos='http://cran.rstudio.com/')

So this liblapack-dev was answer to me.

Happy end and thanks for hints in this discussion!



回答7:

I've had typical problem.
When i was started to load dependencies packages i found error:
was installed by an R version with different internals

Reinstall these packages helped me



标签: r r-caret