56721


**試したこと**  
「ImageMagick6-libs-6」のみインストールしていた環境(CentOS7)へ「ImageMagick-7」と「ImageMagick-
libs-7」を新たにインストールしました

* * *

**現状**  
コマンドで確認

[code]

     # rpm -qa | grep -i imagemagick
     ImageMagick-libs-7.0.8-54.x86_64
     ImageMagick6-libs-6.9.9.39-1.el7.remi.x86_64
     ImageMagick-7.0.8-54.x86_64
    
    # php -i | grep imagick
    /etc/php.d/40-imagick.ini,
    imagick
    imagick module => enabled
    imagick module version => 3.4.3
    
[/code]

PHPで確認

[code]

    print_r(Imagick::getVersion());
    Array
    (
        [versionNumber] => 1689
        [versionString] => ImageMagick 6.9.9-39
    )
    
[/code]

* * *

**Q1.PHP(Imagick)からのバージョンが変わらないのはなぜですか？**  
Imagickバージョンが、今回のインストールでアップグレードされるものと思っていたのですが、全く変わりませんでした。Nginx再起動と、php-
fpm再起動をしても変わりませんでした。なぜ？

**Q2.「ImageMagick 6.9.9」と「imagick module version 3.4.3」の関係性は？**  
・Imagickの最新版は3.4.4で、これは「ImageMagick 7」に対応している？？  
・3.4.3 を 3.4.4 へアップグレードするには？

> [requires ImageMagick version
> 6.5.3-10+](https://pecl.php.net/package/imagick)

* * *

**その他**  
・当初、Imagick6をインストールした時のものと思われるコマンド

[code]

    yum -y install --enablerepo=remi --enablerepo=remi-php72 php-opcache php-devel php-fpm php-pecl-imagick
    
[/code]

・コマンドからのバージョン確認結果は、ImageMagick 7 です


CC BY-SA 4.0
2019-07-18T06:23:47.707
56720
2019-07-18T12:02:55.663
2019-07-18T12:02:55.663
3060
7886
question
php centos imagemagick
php-pecl-imagick パッケージをバージョンアップするには？


**短い回答**

あなたが過去に`remi`リポジトリから`php-pecl-
imagick`をインストールしたのであれば、再度同じリポジトリを参照してアップデートを行うだけだと思います。

[code]

    $ sudo yum --enablerepo=remi --enablerepo=remi-php72 update php-pecl-imagick
    
[/code]

* * *

**詳しい説明**

`ImageMagick6-libs-6.9.9.39-1.el7.remi.x86_64`パッケージは`remi`リポジトリからインストールしたものなので、その他のパッケージもどのリポジトリからインストールしたのかをよく確認する必要があるかと思います。

PHPからImageMagickを呼び出すために必要なライブラリをまとめたのが`php-pecl-
imagick`パッケージのようです。このパッケージのバージョンやインストール状況を確認するのであれば、  
あなたの実行した`rpm -qa | grep -i imagemagick`では正しい情報を参照できません。

**ファイルがどのパッケージに含まれるのか確認**  
(デフォルト以外の場所に移動している場合などは正しく表示されない)

[code]

    $ rpm -qf /etc/php.d/40-imagick.ini
    
[/code]

**インストール済み、利用可能なパッケージ一覧を表示**  
(外部リポジトリを利用している場合は`--enablerepo`が必要)

[code]

    $ sudo yum list php-pecl-imagick
    
[/code]

別質問での回答に含めた[サイト](https://pkgs.org/)でパッケージを検索すると、例えば以下のようなファイルがヒットします。  
利用しているPHPのバージョンにも依存するはずなので、適切なパッケージを確認の上インストールしてください。

[code]

    php-pecl-imagick-3.4.4-1.el7.remi.5.4.x86_64.rpm
    php-pecl-imagick-3.4.3-9.el7.remi.5.4.x86_64.rpm
    php72-php-pecl-imagick-3.4.4-1.el7.remi.x86_64.rpm
    php72-php-pecl-imagick-3.4.3-9.el7.remi.x86_64.rpm
    
[/code]


CC BY-SA 4.0
2019-07-18T07:17:40.887
56721
2019-07-18T07:17:40.887
3060
56720
answer