7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

PhpRedisのパッケージインストールをしたい

Posted at

これは何?

  • これはPhpRedisをインストールする際に悪戦苦闘した記録になります。

環境

  • AWSのEC2サーバーを使用
    • Amazon Linux2
  • PHPのバージョン→7.4.6
  • Redisのバージョン→6.3.0
    • PHPやRedisはインストール済みです。

やってみた

PhpRedisがあるかを確認

  • php74の部分はお使いのものに合わせてください
yum list | grep php74 | grep redis

実行結果
スクリーンショット 2020-06-11 10.18.02.png

なんだかいい感じにありそうですね。ですが、インストールしたいのはPhpRedisです。少し名前が違うのが気になりますね。
いったん内容を確認します。

php74-php-pecl-redis5.x86_64とは

yum info php74-php-pecl-redis5.x86_64

実行結果
スクリーンショット 2020-06-11 10.24.57.png

結果に示されるリンクに飛んでみます。
スクリーンショット 2020-06-11 10.27.02.png

さらにHomepageに飛んでみましょう。
スクリーンショット 2020-06-11 10.28.59.png

なんとPhpRedisのGitHubに行くんです。つまり、yumリポジトリにあるphp74-php-pecl-redis5.x86_64はPhpRedisと同一のものになります。

では、PhpRedisをインストールしていきましょう。
ソースビルドする方法もありますが、せっかくパッケージインストールできるようになっているんです。使わない手はないですねw

yum insatall php74-php-pecl-redis5.x86_64

実行結果
スクリーンショット 2020-06-10 11.25.34.png

エラーです。php74-php-pecl-redis5.x86_64を入れるためにパッケージ:liblzfが足りないみたいです。

liblzf

liblzfのホームページをみてみます。liblzfはデータ圧縮に関するライブラリのようです。
liblzfのインストール方法を検索してもなかなかヒットしません。yumのリストを見てもそれらしきものは見当たりませんでした。
そこで、こちらのサイトの以下の画像部分を参考にしました。

スクリーンショット 2020-06-12 10.23.32.png

画像ではyumではなくrmpを使う方法を紹介されています。そしてどうもepelをインストールしてあることがliblzfのインストールの前提になっているようです。
私の環境にはすでにepelを入れてあります。必要な方はepelのインストールを行いましょう。epelの説明はここでは割愛します。

liblzfをインストールします。

yum install liblzf --enablerepo=epel

実行結果
スクリーンショット 2020-06-10 12.11.46のコピー.png

PhpRedisのインストール

liblzfのインストールが完了したら、再度PhpRedisのインストールを行います。

yum insatall php74-php-pecl-redis5.x86_64 --enablerepo=remi

実行結果
いい感じにいけそうですね。
スクリーンショット 2020-06-10 12.12.15のコピー.png

インストール確認

yum list installed | grep liblzf
yum list installed | grep redis 

実行結果
スクリーンショット 2020-06-10 12.14.39のコピー.png

まとめ

  • PhpRedisはパッケージでのインストールが可能です。
    • ただし、種々のパッケージ依存問題がありますので、各々の環境に不足しているパッケージのインストールが都度必要になります。私の場合は、liblzfというものでした。
  • liblzfのインストール
    • yumリポジトリではなく、epelにあるものだ、というのが今回の落とし穴でした。

参考

7
7
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
7
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?