centos环境下php使用gd的错误


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. 问题总结
此类问题为库依赖的版本不正确,只要重新安装正确的版本后就可以解决在类似问题

猜你喜欢

转载自jimmygan.iteye.com/blog/1431911