1、安装webp
下载地址:https://developers.google.com/speed/webp/download 官网
https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.0.0.tar.gz
tar -xf libwebp-1.0.0.tar.gz cd libwebp-1.0.0 ./configure --prefix=/usr/local/libwebp-1.0.0-linux-x86-64 make && make install 设置环境变量
2、升级glibc库版本
参考:https://blog.csdn.net/heylun/article/details/78833050
1.查看系统版本和glibc库版本
# cat /etc/redhat-release CentOS release 6.9 (Final) # strings /lib64/libc.so.6 |grep GLIBC_ GLIBC_2.2.5 GLIBC_2.2.6 GLIBC_2.3 GLIBC_2.3.2 GLIBC_2.3.3 GLIBC_2.3.4 GLIBC_2.4 GLIBC_2.5 GLIBC_2.6 GLIBC_2.7 GLIBC_2.8 GLIBC_2.9 GLIBC_2.10 GLIBC_2.11 GLIBC_2.12 GLIBC_PRIVATE
2.下载软件并升级
wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz wget http://ftp.gnu.org/gnu/glibc/glibc-ports-2.14.tar.gz tar -xvf glibc-2.14.tar.gz tar -xvf glibc-ports-2.14.tar.gz mv glibc-ports-2.14 glibc-2.14/ports mkdir glibc-2.14/buildcd glibc-2.14/build ../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin make make install
以上完成不报错的话,查看库文件,发现/lib64/libc.so.6软链接指向了2.14版本
# ll /lib64/libc.so.6 /lib64/libc.so.6 -> /lib64/libc-2.14.so
3.再次查看glibc支持的版本
#strings /lib64/libc.so.6 |grep GLIBC_
3、编译安装ImageMagick
参考:
https://blog.csdn.net/u010071211/article/details/80855296
https://www.cnblogs.com/yjken/p/3922306.html
yum remove ImageMagick #之前有过yum安装的先卸载 yum install libwebp-devel #安装开发包,不然编译安装的时候不会支持webp 下载地址: wget https://netix.dl.sourceforge.net/project/imagemagick/old-sources/6.x/6.8/ImageMagick-6.8.7-10.tar.gz tar -zxvf ImageMagick-6.8.7-10.tar.gz cd ImageMagick-6.8.7-10 ./configure --prefix=/usr/local/ImageMagick-6.8.7-10 --with-webp #注意此处检查时要看webp是否是yes make && make install convert -list format #查看ImageMagick支持的格式,确认包含 webp convert test.jpg test.webp #测试
4、编译安装ImageMagick-php
从http://pecl.php.net/package/imagick找到imagick的最新的版本 wget http://pecl.php.net/get/imagick-3.4.3.tgz tar -zxvf imagick-3.4.3.tgz cd imagick-3.4.3 /usr/local/php/bin/phpize export PKG_CONFIG_PATH=/usr/local/ImageMagick-6.8.7-10/lib/pkgconfig/ ./configure --with-php-config=/usr/local/php/bin/php-config --with-imagick=/usr/local/ImageMagick-6.8.7-10/ make && make install vim /etc/profile.d/env.sh #设置环境变量,此步骤是编译安装完一个就设置一个 export PATH=/usr/local/libwebp-1.0.0-linux-x86-64/bin:$PATH export PATH=/usr/local/ImageMagick-6.8.7-10/bin:$PATH export PKG_CONFIG_PATH=/usr/local/ImageMagick-6.8.7-10/lib/pkgconfig vim /usr/local/php/etc/php.ini #修改php.ini文件,安装扩展 extension_dir=/usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/ service php-fpm restart #重启服务 查看phpinfo中是否支持了webp
总结:为什么需要进行升级glibc编译软件?
因为:libwebp库需要依赖glibc的libc.so.6库,需要2.14版本以上,由于升级glibc库代价比较高,可所以建议编译安装