user155695 asked:
I have an ec2 instance with an older version (3.0.2) of R that I’m trying to update to the latest (3.1.1). This is not available in the default yum repo, but is available under EPEL.
The installed version is 3.0.2:
[[email protected] ~]$ yum list R-core
Loaded plugins: priorities, update-motd, upgrade-helper
970 packages excluded due to repository priority protections
Installed Packages
R-core.x86_64 3.0.2-1.17.amzn1 @amzn-main
Available Packages
R-core.i686 3.0.2-1.17.amzn1 amzn-main
These are the repos
[[email protected] ~]$ yum repolist
Loaded plugins: priorities, update-motd, upgrade-helper
970 packages excluded due to repository priority protections
repo id repo name status
!amzn-main/latest amzn-main-Base 4,801
!amzn-updates/latest amzn-updates-Base 1,497
epel/x86_64 Extra Packages for Enterprise Linux 6 - x86_64 10,139+970
repolist: 16,437
Specifying the epel repo, I can see version 3.1.1, it is also listed here
sudo yum --disablerepo="*" --enablerepo="epel" list R-core
Loaded plugins: priorities, update-motd, upgrade-helper
Installed Packages
R-core.x86_64 3.0.2-1.17.amzn1 @amzn-main
Available Packages
R-core.i686 3.1.1-3.el6 epel
R-core.x86_64 3.1.1-3.el6
However when I try to install using sudo yum --disablerepo="*" --enablerepo="epel" install R-core
I get the following errors:
--> Finished Dependency Resolution
Error: Package: R-java-3.1.1-3.el6.x86_64 (epel)
Requires: java-1.5.0-gcj
Error: Package: R-core-devel-3.1.1-3.el6.x86_64 (epel)
Requires: libicu-devel
Error: Package: R-core-devel-3.1.1-3.el6.x86_64 (epel)
Requires: tcl-devel
Error: Package: R-core-devel-3.1.1-3.el6.x86_64 (epel)
Requires: tk-devel
Error: Package: R-core-3.1.1-3.el6.x86_64 (epel)
Requires: libicuuc.so.42()(64bit)
Error: Package: R-core-3.1.1-3.el6.x86_64 (epel)
Requires: xdg-utils
Error: Package: R-core-3.1.1-3.el6.x86_64 (epel)
Requires: libicui18n.so.42()(64bit)
Error: Package: R-core-3.1.1-3.el6.x86_64 (epel)
Requires: libtcl8.5.so()(64bit)
Error: Package: R-core-3.1.1-3.el6.x86_64 (epel)
Requires: libtk8.5.so()(64bit)
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
Presumably this is caused by disabling * repo and only enabling epel which could prevent some dependencies being found, I had to do otherwise it’d only find 3.0.2 from amzn_main.
What is the correct command I should use to install 3.1.1 from the epel repo?
My answer:
EPEL is not compatible with Amazon Linux. It used to be, back in the very early days when Amazon Linux looked more like CentOS, but it is too different now.
View the full question and any other answers on Server Fault.
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.