LifeBa文章如未注明转载均为原创.
转载请注明: 转载自Life吧 本文永久链接地址:http://www.lifeba.org/arch/imagemagick.html
ImageMagick 是用C语言开发图片处理程序。可以对图片进行改变大小、旋转、锐化、减色或增加特效等操作。对图片的操作,即可以通过命令行进行,也可以用C/C++、Perl、Java、PHP、Python或Ruby编程来完成。
一、源码编译安装
下载ImageMagick-6.8.0-0.tar.gz
http://fossies.org/linux/misc/ImageMagick-6.8.0-0.tar.gz/
ftp://mirror.aarnet.edu.au/pub/imagemagick/ImageMagick-6.8.0-0.tar.gz
1、前提
Linux服务器如果没有安装Jpeg v6b、libPng、FreeType库,要在安装imagemagick之前先装好,否则imagemagick没法读取jpeg和png图片,字体文件也读不了.
----freetype-2.4.4.tar.gz 字体引擎,生产高质量的字形影像输出,(例如,彩色文本渲染,“挖空”,等等)。
----zlib-1.2.5.tar.gz 是zlib通用压缩库,图形格式png使用zlib中的deflate压缩算法。
----libpng-1.2.44.tar.gz 支持PNG 或 libpng-1.4.3.tar.gz版本也可, 目前最新版本是1.5
----jpegsrc.v6b.tar.gz 支持JPEG v1 格式 或jpegsrc.v8b.tar.gz版本也可
以下可选:
----jasper-1.900.1.zip 支持JPEG2000(文件扩展名是 .jp2 .j2c)
----tiff-3.8.0.tar.gz 支持tif文件 这个用不到,不要安装了
2、安装Tiff包
下载地址:
ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/delegates
ftp://ftp.remotesensing.org/libtiff/
安装后才能处理TIFF格式图片
tar -xzvf tiff-3.8.0.tar.gz
cd tiff-3.8.0
./configure
make
make install
我安装完成后,在命令行处理图片,报错:libtiff.so.3: cannot open shared object file: No such file or directory
这个模块也用不到, 就不要安装了.
3、安装jasper包:
下载地址:http://www.ece.uvic.ca/~mdadams/jasper/
安装后才能处理JPEG2000格式图片(文件扩展名是 .jp2 .j2c)
unzip jasper-1.900.1.zip
cd jasper-1.900.1
CFLAGS=-fPIC ./configure
make CFLAGS=-fPIC
make CFLAGS=-fPIC install
4、安装jpeg包
下载地址:http://www.ijg.org/files/jpegsrc.v6b.tar.gz
#安装jpeg
cd /disk/src
tar -xzf ../soft/jpegsrc.v6b.tar.gz
cd jpeg-6b/
./configure
make && make install
5、安装zlib
下载地址 http://zlib.net/zlib-1.2.7.tar.gz
cd /disk/src
tar -xzf ../soft/zlib-1.2.7.tar.gz
cd cd zlib-1.2.7
./configure
make && make install
6、安装png
下载地址:
http://www.libpng.org/pub/png/pngcode.html
wget ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.2.50.tar.gz
cd /disk/src
tar -xzf ../soft/libpng-1.2.50.tar.gz
cd libpng-1.2.50
cp scripts/makefile.std makefile
make
make install
7、安装freetype
下载地址:
http://www.freetype.org/
http://download.savannah.gnu.org/releases/freetype/freetype-2.4.9.tar.gz
cd /disk/src
tar -xzf ../soft/freetype-2.4.9.tar.gz
cd freetype-2.4.9
./configure
make
make install
8、安装ImageMagick
#宣告64位环境
export CFLAGS=’-fPIC’
tar -xzf ../soft/ImageMagick-6.8.0-0.tar.gz
cd ImageMagick-6.8.0-0/
./configure --with-quantum-depth=8 --enable-share --enable-static
make all
make install
/usr/bin/ld: skipping incompatible /usr/lib/libpthread.a when searching for -lpthread
/usr/bin/ld: cannot find -lltdl
collect2: ld returned 1 exit status
libtool: install: error: relink `magick/libMagickCore.la' with the above command before installing it
make[2]: *** [install-libLTLIBRARIES] 错误 1
make[2]: Leaving directory `/disk/src/ImageMagick-6.8.0-0'
install: error: relink `magick/libMagickCore.la' with the above command before installing it
/usr/bin/ld: cannot find -lltdl解决方法:
http://blog.csdn.net/osoon/article/details/5526455
二、二进制RPM安装
1、先卸载后安装
安装:
yum install ImageMagick ImageMagick-devel
如果已经安装过的话,先执行下面的卸载命令,我的已经安装过了6.2.8版本,所以要先卸载。
[root@COS64-65 soft]# convert --version
Version: ImageMagick 6.2.8 05/07/12 Q16 file:/usr/share/ImageMagick-6.2.8/doc/index.html
Copyright: Copyright (C) 1999-2006 ImageMagick Studio LLC
[root@COS64-65 soft]# rpm -qa| grep ImageMagick
ImageMagick-devel-6.2.8.0-15.el5_8
ImageMagick-6.2.8.0-15.el5_8
ImageMagick-devel-6.2.8.0-15.el5_8
ImageMagick-6.2.8.0-15.el5_8卸载:yum erase ImageMagick 或 yum remove ImageMagick
2、安装基础库
yum install libtool-ltdl libtool-ltdl-devel freetype freetype-devel fontconfig-devel
wget http://centos.ustc.edu.cn/epel/5/x86_64/epel-release-5-4.noarch.rpm
rpm -Uvh epel-release-5-4.noarch.rpm
yum --enablerepo=epel install jasper jasper-libs jasper-devel
3、安装ImageMagick-6.8.0-0.x86_64.rpm
下载地址:
http://www.imagemagick.org/script/binary-releases.php#unix
wget ftp://ftp.imagemagick.org/pub/ImageMagick/linux/CentOS/x86_64/ImageMagick-6.8.0-0.x86_64.rpm
wget ftp://ftp.imagemagick.org/pub/ImageMagick/linux/CentOS/x86_64/ImageMagick-devel-6.8.0-0.x86_64.rpm
rpm -Uvh ImageMagick-6.8.0-0.x86_64.rpm
出现错误
error: Failed dependencies:
libHalf.so.4()(64bit) is needed by ImageMagick-6.8.0-0.x86_64
libIex.so.4()(64bit) is needed by ImageMagick-6.8.0-0.x86_64
libIlmImf.so.4()(64bit) is needed by ImageMagick-6.8.0-0.x86_64
libImath.so.4()(64bit) is needed by ImageMagick-6.8.0-0.x86_64
libfftw3.so.3()(64bit) is needed by ImageMagick-6.8.0-0.x86_64
libjasper.so.1()(64bit) is needed by ImageMagick-6.8.0-0.x86_64
解决方法:
yum install --nogpgcheck ImageMagick-6.8.0-0.x86_64.rpm
4、检测安装结果
[root@COS64-65 soft]# convert --version
Version: ImageMagick 6.8.0-0 2012-10-11 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP
三、参考资料
http://www.imagemagick.org/script/download.php
http://www.imagemagick.org/script/index.php
http://elf8848.iteye.com/blog/455675