背景
php7.3にアップグレード後、phpunitにてカバレッジレポートを出力しようとしてxdebugをinstallしようと思いましたが、
2019年08月01日時点でamzn-main
リポジトリにはphp73-pecl-xdebug.x86_64
パッケージは存在しませんでした。
対応方針
以下の理由により、remi-php73
リポジトリからphp7.3をインストールしました。
それぞれのリポジトリからのインストールにおいても回避方法はあると思いますが、WEB上の事例が多い方法としてremi-php73
を選択しています。
-
amzn-main
にはphp7.3のxdebugのパッケージが無い -
remi-safe
ではphpコマンドではなくphp73コマンドになりphpunitがそのまま動作しない- (aliasを貼れば動くかもしれない)
-
phpenv
は利用経験がなかったためskip
導入
remiリポジトリを設定
$ rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
install
amzn-main
が有効な状態でphpモジュールを導入しようとすると、php5.4が導入されます。
remi-php73
を有効化、amzn-main
を無効化してから、yum installl php
するとうまく指定できました。
$ sudo yum install --enablerepo=remi,remi-php73 --disablerepo=amzn-main php php-fpm php-xdebug
導入途中で発生した事象
httpd24との依存関係でエラー
エラー: httpd24-tools conflicts with httpd-tools-2.2.34-1.16.amzn1.x86_64
エラー: httpd24 conflicts with httpd-2.2.34-1.16.amzn1.x86_64
apache2.4を利用していないのであれば、httpd24モジュールを削除。
$ sudo yum remove httpd24 httpd24-tools
libwebpとの依存関係でエラー
エラー: パッケージ: gd-last-2.2.5-5.el6.remi.x86_64 (remi-safe)
要求: libwebp.so.5()(64bit)
amzn-main
で導入されているlibwebpですと依存関係でエラーが発生するようです。
一旦libwebpを削除し、epelから入れ直します。
$ yum remove libwebp
$ yum --disablerepo=amzn-main --enablerepo=epel install libwebp