0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

centos9でlibyaml-develが見つからない

Posted at

conohaサーバーを借り、ruby3.2.2をasdf経由でインストールしようとしていた際、libyaml-develが必要だからインストールしてね、と出るのにインストールコマンドを打つと、

command
$ sudo dnf install -y libyaml-devel
Last metadata expiration check: 0:00:43 ago on Mon 29 Jul 2024 11:00:14 PM JST.
No match for argument: libyaml-devel

となり、見つからないとなってしまった。その際解決した手順の忘備録です。

対処法

下記ページの通りに実行したところ、無事インストールできrubyのインストールも完了しました。

参考ページの通り、以下のコマンドを実行します。

command
sudo dnf install -y epel-release
sudo dnf config-manager --enable epel
sudo dnf config-manager --set-enabled crb
sudo dnf repolist | grep crb
sudo dnf install libyaml libyaml-devel

解決理由を調べてみる

まず、EPELというのは Extra Packages for Enterprise Linux の略で、標準のCentOSやRHELリポジトリにない追加パッケージを提供してくれるもののようです。
それをインストールし、有効化しているのが以下コマンドです。

sudo dnf install -y epel-release
sudo dnf config-manager --enable epel

そして、CRBというのがCodeReady Builderの略で、こちらも開発用ライブラリやツールを提供してくれます。
(以前のPowerToolsリポジトリ、という言葉が散見されるので調べてみると、下記のように似た記事が出てきます。両者の違いを調べるまではしていませんが、どうやらcentos9ではPowerToolsは利用でず、CRBを利用する形になっているようです。これでちょっとハマりました。)

問題点: 「CentOS Stream 9」では、「powertools」リポジトリが使えません。

それを有効化します。

sudo dnf config-manager --set-enabled crb

ちゃんと有効化されているか確認。

sudo dnf repolist | grep crb

私の場合は以下のように出力されました。

crb                 CentOS Stream 9 - CRB

そして、当初の目的であるパッケージをインストールして完了です。

sudo dnf install libyaml libyaml-devel

要するに、centos streamにないパッケージの広範な有効化をした結果、libyaml-develのインストールができたということでしょうか。(直接の解決要因はcrbのような気がします。が、間違っていましたら申し訳ないです)

これでcentos9環境でもrubyやrailsの作業ができそうです。よかった。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?