gd-jpeg: JPEG library reports unrecoverable error Wrong JPEG library version: library is 62, caller expects 80 错误的解决办法
前言
之前在centos 5 上安装了nginx-1.0.12 + php-5.3.10的服务器环境,但是测试的时候发现gd库在处理jpeg图片的时候会报错
[error] [php] imagejpeg() [<a href='function.imagejpeg'>function.imagejpeg</a>]: gd-jpeg: JPEG library reports unrecoverable
然后使用php直接运行一个测试的时候出现错误描述,定位到libjpeg的版本问题
Wrong JPEG library version: library is 62, caller expects 80
即:当前的libjpeg版本为62,需要的版本为80
1. 下载jpegsrc安装:
wget http://www.ijg.org/files/jpegsrc.v8d.tar.gz tar -zxvf jpegsrc.v8d.tar.gz ./configure make make install
2. 删除/usr/lib/libjpeg.so,重新建立软连接到libjpeg.so.8.3.0(路径/usr/local/lib/libjpeg.so.8.3.0,可将其拷贝到/usr/lib/中)
rm /usr/lib/libjpeg.so ln -s /usr/lib/libjpeg.so /usr/lib/libjpeg.so.8.3.0
再次访问就可以处理jpeg格式图片了,若
ok
3. 问题总结
此类问题为库依赖的版本不正确,只要重新安装正确的版本后就可以解决在类似问题