我有Ubuntu18.04.1LTS,它默认为ImageMagick 6.9.7,我希望ImageMagick处理jp2映像,所以我安装了libopenjp2-7-dev,并从源代码安装了imagemagick7,如下所示:
wget https://www.imagemagick.org/download/ImageMagick.tar.gz
tar xvzf ImageMagick.tar.gz
cd ImageMagick-7.0.10-22
./configure
make
sudo make install
sudo ldconfig /usr/local/lib
magick -version
显示了正确的一个:
Version: ImageMagick 7.0.10-22 Q16 x86_64 2020-07-02 https://imagemagick.org
Copyright: © 1999-2020 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC HDRI OpenMP(4.5)
Delegates (built-in): jng jp2 jpeg png xml zlib
但在phpinfo()
中,它显示:
imagick module version 3.4.4
imagick classes Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel
Imagick compiled with ImageMagick version ImageMagick 6.9.7-4 Q16 x86_64 20170114 http://www.imagemagick.org
Imagick using ImageMagick library version ImageMagick 6.9.7-4 Q16 x86_64 20170114 http://www.imagemagick.org
我甚至试图删除ImageMagick 6.9.7和ImageMagick扩展,我认为通过重新安装只有一个可用版本的扩展,它会在某种程度上指向这一点,但是如果没有ImageMagick6,扩展就无法安装。关于如何使PHP使用ImageMagick 7,我没有什么想法。
发布于 2020-07-10 13:41:51
我认为您现在还在使用ImageMagick v6.x。这里最重要的是imagick
模块本身。不管系统上的ImageMagick版本如何,imagick模块v3.4.4只支持ImageMagick版本6.x。
来自PECL图像网站 ():
The 3.4.4 release is intended to be the last release (other than small bug fixes)
that will support either PHP 5.x, or ImageMagick 6.x.
The next planned release will be PHP > 7.0 and ImageMagick > 7.0 at least, if not higher.
发布于 2021-01-13 23:01:30
您可以在PHP 7中使用ImageMagick 7,方法是首先在系统上安装ImageMagick 7,然后按照回购(https://github.com/Imagick/imagick)提供的方式编译ImageMagick扩展:
编译和安装ImageMagick 7:
sudo apt update
sudo apt build-dep imagemagick
wget https://www.imagemagick.org/download/ImageMagick.tar.gz
tar xf ImageMagick.tar.gz
cd ImageMagick-7*
./configure
make
sudo make install
sudo ldconfig /usr/local/lib
编译和安装:
git clone https://github.com/Imagick/imagick
cd imagick
phpize && ./configure
make
make install
PHP使用的版本可以通过在PHP中调用Imagick::getVersion()来验证
https://askubuntu.com/questions/1255966
复制相似问题