RHEL7中没有ruby-devel?

时间:2015-06-05 11:53:45

标签: ruby redhat

我有一个最近安装的RHEL7系统,需要做gem安装jekyll,但是这个失败了:

Fetching: yajl-ruby-1.2.1.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing jekyll:
        ERROR: Failed to build gem native extension.

    /usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /usr/share/include/ruby.h
Google建议这是因为缺少安装ruby-devel软件包。然而,在RHEL7中似乎 这样的包。我是否需要转移到软件集合(不是真的想要这样做,因为这将用于生产机器,而不是开发)或者我可以通过其他方式获得它吗?

9 个答案:

答案 0 :(得分:31)

这个答案是通过拼凑其他答案中的位来实现的 - 所以对于之前的贡献者......谢谢你,因为我不会想到这一点。

此示例基于RHEL 7 AMI(亚马逊管理映像)3.10.0-229.el7.x86_64。

因此,默认情况下,如上所述,optional存储库未启用。不要再添加另一个repo.d文件,因为它已被禁用。

  1. 首先启用您需要的名称。我用grep做了这个:

    grep -B1 -i optional /etc/yum.repos.d/*
    
    每个名称上方的

    将包含在[ ]中的回购ID,以查找可选 optional-source

  2. 启用可选的repo:

    yum-config-manager --enable <repo-id>
    
  3. 刷新yum缓存(不确定是否有必要,但不会造成伤害):

    sudo yum makecache
    
  4. 最后,您可以安装ruby-devel

    yum install ruby-devel
    
  5. 根据您的用户权限,您可能需要使用sudo

答案 1 :(得分:6)

您需要订阅可选回购以获取所有开发包。

subscription-manager repos  --enable rhel-7-server-optional-rpms

这是因为ruby-devel包中包含rhel-7-server-optional-rpms包。

答案 2 :(得分:2)

至少在Oracle Linux 7上,你必须启用一个额外的仓库。

[root@foo ~]# yum repolist
repo id                     repo name 
[...]
ol7_optional_latest/x86_64  Oracle Linux 7Server Optional Latest (x86_64)

启用回购ruby-devel后,等待您的安装。

[root@foo ~]# yum info ruby-devel | egrep 'Name|Version|From'
Name        : ruby-devel
Version     : 2.0.0.598
From repo   : ol7_optional_latest

就是这样。

答案 3 :(得分:1)

ruby​​-devel RPM可在RHEL 7上的以下回购中找到

RHEL -7-服务器可选-β-的rpm

设置&#34;启用= 1&#34;在.repo文件中的这个repo然后运行

yum install ruby-devel

答案 4 :(得分:0)

RHEL 7可以使用其他回购商

# yum -y install yum-utils
# yum repolist all

这将列出所有可用的回购。启用您需要的仓库。 devel包例如:

# yum-config-manager --enable rhui-REGION-rhel-server-extras

执行这些步骤后,我可以安装ruby-devel,augeas-devel并安装/编译

# gem install ruby-augeas

答案 5 :(得分:0)

我遇到了同样的问题,最终从以下网址下载了该软件包:

https://www.rpmfind.net/linux/rpm2html/search.php?query=ruby-devel

在RHEL7.5中,此软件包可以安装:

rpm -ivh ruby-devel-2.0.0.648-33.el7_4.x86_64.rpm

此外,可以使用以下命令安装开发工具:

yum groupinstall "Development Tools"

答案 6 :(得分:-1)

在您的系统上安装ruby软件包,然后重试。

sudo yum install ruby193-ruby-devel.x86_64

答案 7 :(得分:-1)

我使用了如下命令,但它有效

yum-config-manager --enable rhui-REGION-rhel-server-extras
yum info ruby-devel | egrep 'Name|Version|From'
yum install ruby-devel

答案 8 :(得分:-1)

您可以从以下网址下载:

http://rpm.pbone.net/index.php3/stat/3/srodzaj/1/search/ruby-devel(x86-64)

这样的事情会起作用:

wget ftp://bo.mirror.garr.it/1/centos/7.2.1511/os/x86_64/Packages/ruby-devel-2.0.0.598-25.el7_1.x86_64.rpm
rpm -ivh ruby-devel-2.0.0.598-25.el7_1.x86_64.rpm