当前位置:   article > 正文

CentOS7.9编译安装ImageMagick7.1库(HEIC)以及php7的Imagick扩展_php imagick库安装

php imagick库安装

由于ImageMagick7以下不支持heic等图片格式,所以重新安装了ImageMagick7.1版本支持heic格式,在网上找了很多资料,归纳总结并写此文章记录一下。

官网:https://imagemagick.org/script/download.php 

//如果需要移除旧版本,建议是干掉,旧版本是6.9.10.68-5.el7_9
yum remove ImageMagick -y

Linux(centos7.9)上安装ImageMagick7.1.1-21库以及php的Imagick扩展

1.在Linux上安装ImageMagick7.1.1-21

安装之前需要配置一下pkg-config,以便 ImageMagick 可以在您的系统上找到某些可选的委托库

  1. PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/lib64/pkgconfig:/usr/local/lib/pkgconfig
  2. export PKG_CONFIG_PATH
  3. LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib:/usr/lib64:/usr/local/lib:/usr/local/lib64
  4. export LD_LIBRARY_PATH
2.安装依赖库(这里我只安装heic(heif) 的依赖,其他格式类似一样安装)
安装x265(libheif依赖)
  1. wget https://www.nasm.us/pub/nasm/releasebuilds/2.16/nasm-2.16.tar.gz
  2. tar -zxvf nasm-2.16.tar.gz
  3. cd nasm-2.16
  4. ./autogen.sh && ./configure && make && make install
3.安装libheif
方案一:安装libheif-1.15.2.tar.gz
  1. wget https://github.com/strukturag/libheif/releases/download/v1.15.2/libheif-1.15.2.tar.gz
  2. tar -zxvf libheif-1.15.2.tar.gz
  3. cd libheif-1.15.2
  4. ./autogen.sh && ./configure && make && make install
  5. heif-info
方案二:安装libheif-1.17.5.tar.gz

This library uses the CMake build system (the earlier autotools build files have been removed in v1.16.0).

libheif.1.16(包括1.16)之后的版本取消了autogen的安装方式,使用cmake,并且CMake >= 3.21

安装cmake

  1. yum remove cmake
  2. wget https://cmake.org/files/v3.21/cmake-3.21.0.tar.gz
  3. tar -zxvf cmake-3.21.0.tar.gz
  4. cd cmake-3.21.0
  5. ./bootstrap && make -j4 && sudo make install
  6. ln -s /usr/local/bin/cmake /usr/bin/cmake
  7. cmake --version
  1. wget https://github.com/strukturag/libheif/releases/download/v1.17.5/libheif-1.17.5.tar.gz
  2. tar -zxvf libheif-1.17.5.tar.gz
  3. cd libheif-1.17.5
  4. mkdir build
  5. cd build
  6. cmake --preset=release ..
  7. cd ..
  8. make && make install
4.安装ImageMagick-7.1.1-21
  1. wget https://imagemagick.org/archive/ImageMagick-7.1.1-21.tar.gz
  2. tar -zxvf ImageMagick-7.1.1-21.tar.gz
  3. cd ImageMagick-7.1.1-21
  4. ./configure --prefix=/usr/local/imagemagick && make && make install

注意:如果./configure 的结果列表中没有HEIC=yes yes项,说明HEIC没有安装成,重来,并检查是不是有报错

设置环境变量

  1. vim /etc/profile
  2. export MAGICK_HOME=/usr/local/imagemagick
  3. export PATH=$PATH:$MAGICK_HOME/bin
  4. //加载环境变量
  5. source /etc/profile
  6. //验证版本安装是否成功
  7. convert -version
  8. //查看支持格式列表
  9. convert -list format
  10. 在编译的过程中如果出现报错

注意:如果convert -list format 的结果列表中没有HEIF项,说明安装失败,重来,检查安装过程中是否有报错

5.安装php扩展imagick-3.7.0
  1. wget https://pecl.php.net/get/imagick-3.7.0.tgz
  2. tar xvf imagick-3.7.0.tgz
  3. cd imagick-3.7.0
  4. /www/server/php/74/bin/phpize
  5. ./configure --with-php-config=/www/server/php/74/bin/php-config --with-imagick=/usr/local/imagemagick
  6. make && make install

修改php.ini文件

  1. [ImageMagick]
  2. extension = /www/server/php/74/lib/php/extensions/no-debug-non-zts-20190902/imagick.so

重启web服务,分别查看php -m 和phpinfo

到此,大功告成,尝试过使用yum,很麻烦各种依赖包,暂时没成功

PS:如果反复尝试安装,建议重启系统

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/841690
推荐阅读
  

闽ICP备14008679号