在 RHEL 7 上安装 R

MSS*_*MSS 14 r redhat-enterprise-linux

我正在尝试在 RHEL 7 上安装 R。我正在使用 epel-release-7-2.noarch.rpm 并解决了许多依赖项(通过手动 .rpm 安装一个一个),但在依赖项解析结束时我得到了这些错误:

--> Finished Dependency Resolution Error: Package: R-core-3.1.1-7.el7.x86_64 (epel) Requires: tex(dvips) Error: Package: R-core-devel-3.1.1-7.el7.x86_64 (epel) Requires: texinfo-tex Error: Package: R-java-devel-3.1.1-7.el7.x86_64 (epel) Requires: java-devel Error: Package: R-core-3.1.1-7.el7.x86_64 (epel) Requires: tex(latex) Error: Package: R-core-devel-3.1.1-7.el7.x86_64 (epel) Requires: tex(latex) You could try using --skip-broken to work around the problem You could try running: rpm -Va --nofiles --nodigest

我使用的系统没有注册到 Red Hat Subscription Management,所以我不能使用 subscription-manager 来注册它并解决依赖关系。

我在哪里可以找到 tex(dvips) 和 tex(latex)?我正在尝试从 mirror.centos.org/centos/7/os/x86_64/Packages/ 下载它,但我仍然没有找到正确的文件

更新: 最后我自己解决了更新 RHEL 存储库的问题: cd /etc/yum.repos.d/ vi CentOS-base.repo [base] name=CentOS-$releasever – Base baseurl=http://buildlogs.centos.org/centos/7/os/x86_64-20140704-1/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 priority=1 exclude=php mysql

在那之后: yum update yum install texlive yum install R

...并完成了干净的安装!:)

Tom*_*m B 11

我认为在 CentOS 7 上安装 R 是最简单的方法:

sudo yum install -y epel-release 
sudo yum update -y 
sudo yum install -y R
Run Code Online (Sandbox Code Playgroud)


小智 8

如果您不想安装 CentOS 存储库,您可以手动选择所需的单个软件包:

操作系统 RHEL 7

 [ec2-user ~]$ cat /etc/redhat-release
 Red Hat Enterprise Linux Server release 7.3 (Maipo)
Run Code Online (Sandbox Code Playgroud)

重要提示:验证是否已按预期安装和配置了 EPEL 存储库。但是在安装R的时候,还是存在依赖问题:

[ec2-user ~]$ sudo yum install R
… output truncated …
--> Finished Dependency Resolution
Error: Package: R-core-devel-3.3.1-2.el7.x86_64 (epel)
       Requires: texinfo-tex
Run Code Online (Sandbox Code Playgroud)

Redhat 或 EPEL 存储库中没有此软件包。我从 CentOS7 存储库中抓取了一个。

[ec2-user ~]$ wget http://mirror.centos.org/centos/7/os/x86_64/Packages/texinfo-tex-5.1-4.el7.x86_64.rpm
Run Code Online (Sandbox Code Playgroud)

并尝试安装它,但又遇到了另一个依赖问题……

[ec2-user ~]$ sudo yum localinstall texinfo-tex-5.1-4.el7.x86_64.rpm
… output truncated …
--> Finished Dependency Resolution
Error: Package: texinfo-tex-5.1-4.el7.x86_64 (/texinfo-tex-5.1-4.el7.x86_64)
       Requires: tex(epsf.tex)
Run Code Online (Sandbox Code Playgroud)

同样,在 EPEL 或 RedHat 中没有任何内容,所以我又抓了几个 CentOS7 软件包:

[ec2-user ~]$ wget http://mirror.centos.org/centos/7/os/x86_64/Packages/texlive-epsf-doc-svn21461.2.7.4-38.el7.noarch.rpm
[ec2-user ~]$ wget http://mirror.centos.org/centos/7/os/x86_64/Packages/texlive-epsf-svn21461.2.7.4-38.el7.noarch.rpm
Run Code Online (Sandbox Code Playgroud)

所以现在我安装下载的本地包

[ec2-user ~]$ sudo yum localinstall texlive-epsf-doc-svn21461.2.7.4-38.el7.noarch.rpm
[ec2-user ~]$ sudo yum localinstall texlive-epsf-svn21461.2.7.4-38.el7.noarch.rpm
[ec2-user ~]$ sudo yum localinstall texinfo-tex-5.1-4.el7.x86_64.rpm
Run Code Online (Sandbox Code Playgroud)

最后……

[ec2-user ~]$ sudo yum install R
…output truncated…
Complete!
Run Code Online (Sandbox Code Playgroud)

HTH


小智 6

顺便说一句:对于那些已经订阅并希望保留在 RHEL 存储库中的人,将在“rhel-7-server-optional-rpms”中找到丢失的软件包。

所以yum --enablerepo=epel --enablerepo="rhel-7-server-optional-rpms" install R 为我工作。

你可能需要做一个subscription-manager repos --enable rhel-7-server-optional-rpms.


小智 3

对于那些寻求直接答案的人来说,R 属于 RHEL Extra Packages for Enterprise Linux (EPEL),因此:

su -c 'rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm'

sudo yum update

sudo yum install R
Run Code Online (Sandbox Code Playgroud)