安装libjpeg,让php支持jpeg图片的裁切、缩放等操作

php项目中,使用到图片裁切、缩放等功能时,就需要php启用gdlibjpeg扩展,否则imagecreatefromjpeg 类似函数不可用。可能是因为jpeg的版权问题,yum安装的gd库默认不支持jpeg有关操作,需要手工安装jpeg library(参见php官网:https://www.php.net/manual/en/image.requirements.php)。


php官网关于让gd支持jpeg的叙述

 

按照php官网指引,打开http://www.ijg.org/,下载最新版本,当前是 jpegsrc.v9d.tar.gz(下载链接:http://www.ijg.org/files/jpegsrc.v9d.tar.gz)。逐条执行以下命令,解压、安装:

tar -zxvf jpegsrc.v9d.tar.gz

cd jpeg-9d

./configure --enable-shared 官网提示,必须添加此参数

make

sudo make install 此时,将libjpeg安装到了默认目录:/usr/local/lib

 

接下来,要使库libjpeg.so全局可用,否则,从php源码配置时会报错,查看日志可见提示libjpeg.so.9找不到。我们这样操作:

sudo vi /etc/ld.so.conf

加入一行:/usr/local/lib

保存后执行:sudo ldconfig -v

 

接下来安装php即可:

cd php-5.6.40

./configure --prefix=/usr/local/php5_6 --enable-fpm --with-mhash --enable-mbstring --with-curl --disable-rpath --with-pdo-mysql --enable-inline-optimization --with-bz2 --with-zlib --enable-pcntl --without-sqlite3 --without-pdo-sqlite --disable-mbregex --enable-shared --with-gd --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-zip

make -j2 && make install

 

安装完成后,在phpinfo中能看到JPEG Support enabled libJPEG Version 9 compatible类似文字,说明gdjpeg功能安装成功(如图)。

gdjpeg功能安装成功

 

原文地址:https://www.cnblogs.com/ayao/p/php_libjpeg.html