折腾了2天时间,终于把ImageMagick和jmagick装好了,网上有很多资料,但相对比较零散,整理了一下步骤和其中碰到的问题,发上来作为记录
在安装 imagemagick之前先装好,Linux服务器如果没有安装Jpeg v6b、libPng库,否则imagemagick没法读取jpeg和png图片
1、下载并安装Jpeg v6b
(1)下载jpegsrc.v6b.tar.gz
(2)解压并安装
tar xzvf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure --prefix=/usr/local/libjpeg --enable-shared --enable-static
(
此时如果出现
checking host system type... Invalid configuration `x86_64-unknown-linux-gnu
checking host system type... Invalid configuration `x86_64-unknown-linux-gnu': machine `x86_64-unknown' not recognized
解决:用/usr/share/libtool下的config.guess、config.sub替换/usr/local/jpeg-6b下的config.guess、config.sub
)make
make install
2、下载并安装libPng库
(1)下载libpng-1.2.51.tar.gz
(2)解压并安装
tar xzvf libpng-1.2.51.tar.gz
cd libpng-1.2.51
./configure
make
make install
2、下载并安装jasper-1.900.1.zip
(1)下载jasper-1.900.1.zip
(2)解压并安装
unzip jasper-1.900.1.zip
cd jasper-1.900.1
./configure
make
make install
3、下载并安装ImageMagick
tar xzvf ImageMagick-6.4.0-0.tar.gz
cd ImageMagick-6.4.0
./configure --enable-shared --without-perl
make
make install
安装完成后,运行convert -version命令检测,应该会出现:
Version: ImageMagick 6.4.0 08/31/10 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2008 ImageMagick Studio LLC
convert默认安装到了/usr/local/bin下面,上面的命令可能提示找不到convert命令。那么可以在/usr/bin下面创建一个到/usr/local/bin/convert的链接:
cd /usr/bin
ln -s /usr/local/bin/convert convert
convet -version
(此时如果出现错误: convert: error while loading shared libraries: libMagickCore.so.1: cannot open shared object file: No such file or directory
解决:将so所在的路径加入到LD_LIBRARY_PATH(前面的安装方式默认安装so到/usr/local/lib目录下) :export LD_LIBRARY_PATH=/usr/local/lib )
再运行convert -version命令检测
4、下载并安装JMagick
(1)下载JMagick
(2)在安装JMagick之前先配置环境变量,尤其是JAVA_HOME,否则编译时会出现:JMagick configure: error: 'Unable to locate Java directories'的错误。
export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0x86_64
export CLASSPATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export JAVA_BIN=$JAVA_HOME/bin
export JRE_HOME=$JAVA_HOME/jre
export PATH=$PATH:$JAVA_BIN
export JAVA_HOME CLASSPATH PATH
source /etc/profile(让/etc/profile文件修改后立即生效)
(3)安装JMagick
tar xzvf jmagick-6.4.0-src.tar.gz
解压到了文件夹6.4.0中,为了便于区分,重命名该文件夹:
mv 6.4.0 jmagick-6.4.0
cd jmagick-6.4.0
./configure
make all
make install
将生成的libJMagick-6.4.0.so复制到jre中的lib/amd64(amd64可能在不同的硬件架构会有不同的名字,如i386)文件夹中,同时重命名为libJMagick.so。
cd /usr/local/lib
cp libJMagick-6.4.0.so $JRE_HOME/lib/amd64
mv libJMagick-6.4.0.so libJMagick.so
将jmagick-6.4.0.jar复制到$JRE_HOME/lib/ext文件夹下,并重命名为jmagick.jar
cp jmagick-6.4.0/lib/jmagick-6.4.0.jar $JRE_HOME/lib/ext/jmagick.jar
至此就配置完毕了。