Linux上安装Imagemagickk和JMagick

一、软件列表è下载地址:http://www.imagemagickk.org/download/delegates/

 

  • jpegsrc.v8.tar.gz
  • zlib-1.2.7.tar.gz
  • libpng-1.5.10.tar.gz
  • tiff-3.8.2.tar.gz
  • freetype-2.4.9.tar.gz
  • libtiff-lzw-compression-kit-1.5.tar.gz
  • Imagemagickk-6.5.3-10.tar.gz
  • jmagick-6.4.0-src.tar.gz

    

二、安装过程

 

注意:使用root用户安装,首先使用yum install gcc*或者yum update更新gcc

调用java –version,必须显示如下信息

java version "1.6.0"

OpenJDK  Runtime Environment (build 1.6.0-b09)

OpenJDK 64-Bit Server VM (build 1.6.0-b09, mixed mode)

1、安装jpeg支持软件jpegsrc.v8.tar.gz

tar zxvf jpegsrc.v8.tar.gz

cd jpeg-8/

./configure --prefix /usr/local/tools/jpeg-8 --enable-shared --enable-static 

make

make install

2安装png支持软件libpng-1.5.10.tar.gz(安装支持软件zlib-1.2.3)

tar zxvf zlib-1.2.7.tar.gz

cd zlib-1.2.7

CFLAGS="-O3 -fPIC" ./configure --prefix /usr/local/tools/zlib-1.2.7  //使用64位元的方法进行编译

make

make install
tar zxvf libpng-1.5.10.tar.gz

cd libpng-1.5.10

./configure  --prefix /usr/local/tools/libpng-1.5.10

make

make install

 

如果安装出错报错:configure: error: zlib not installed

.进入zlib的源文件目录,执行命令 make clean,清除zlib

2.重新配置 ./configure,后面不要接--prefix参数 CFLAGS="-O3 -fPIC" ./configure

3.编辑 && 安装;

4.进入libpng目录,执行命令 ./configure --prefix=/usr/local/libpng;

5.编译 && 安装;

6.安装成功;

 

3安装tiff支持软件

tar zxvf tiff-3.8.2.tar.gz

cd tiff-3.8.2

./configure --prefix /usr/local/tools/tiff-3.8.2

make && make install

4、安装freetype字体支持软件freetype-2.4.9.tar.gz

tar zxvf freetype-2.4.9.tar.gz

cd freetype-2.4.9

./configure --prefix=/usr/local/tools/freetype-2.4.9

make

make install

5、安装Imagemagick-6.5.3-10.tar.gz[安装高版本的再安装JMagic时会报错]

tar zvxf Imagemagick-6.5.3-10.tar.gz

cd Imagemagickk-6.5.3-10

./configure --prefix=/usr/local/tools/Imagemagick --enable-share LDFLAGS="-L/usr/lib" CPPFLAGS="-I/usr/include" --enable-lzw

make

make install

6JMagick是一个开源API,利用JNI(Java Native Interface)技术实现了对ImagemagickkAPI的Java访问接口。安装jmagick-6.4.0-src.tar.gz

   env 查看JAVA_HOME,如果没有

vi /etc/profile

export  JAVA_HOME=/export/home/weblogic/Oracle/Middleware/jrockit_160_17_R28.0.0-679
export  CLASSPATH=.:$JAVA_HOME/lib/:$ CLASSPATH
export  PATH=$JAVA_HOME/bin:$PATH

              调用source /etc/profile,使修改生效

tar xvfz jmagick-6.4.0-src.tar.gz

cd 6.4.0

./configure --prefix=/usr/local/tools/jmagick-6.4.0 --with-magick-home=/usr/local/tools/Imagemagick --enable-share --enable-static

make

make install

将JMagic库加入到共享库中

vi /etc/profile

Mac OS时:

export DYLD_LIBRARY_PATH=

$DYLD _LIBRARY_PATH:/usr/local/jmagick-6.4.0/lib:/usr/local/tools/Imagemagickk/lib

 

Linux系统时:

export PATH=$PATH:/usr/local/tools/Imagemagick/bin

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/tools/jmagick-6.4.0/lib:/usr/local/tools/Imagemagick/lib

export DYLD_LIBRARY_PATH=:/usr/local/tools/jmagick-6.4.0/lib:/usr/local/tools/Imagemagick/lib

export  CLASSPATH=$CLASSPATH:/usr/local/tools/jmagick-6.4.0/lib

source /etc/profile

7将上述软件安装目录(/usr/local/tools/Imagemagick /usr/local/tools/jmagick-6.4.0freetype-2.4.9libpng-1.5.10zlib-1.2.7jpeg-8tiff-3.8.2)切换到应用所在的用户、用户组下

     Chown –R weblogic:dba 软件安装目录

三、在JAVA工程中使用Jmagick压缩生成图片

将jmagick-6.4.0.jar拷贝至jre的lib /ext下,

比如 /export/home/weblogic/Oracle/Middleware/jrockit_160_17_R28.0.0-679/jre/lib/ext/jmagick-6.4.0.jar  

 应用中添加System.setProperty("jmagick.systemclassloader","no");

更改系统jdksudo update-alternatives --config java

运行 convert 测试安装是否成功

四、常见问题

Exceptions/Errors:
java.lang.NoClassDefFoundError: Could not initialize class magick.ImageInfo
java.lang.UnsatisfiedLinkError: no JMagick in java.library.path

Things I've tried so far:
1) copied jmagick.jar to JAVA_HOME/jre/lib/ext
2) copied jmagick.jar to tomcat(your server) common lib & webapp/web-inf/lib
3) set LD_LIBRARY_PATH=/usr/local/lib in tomcat startup script
4) tried setting -Djava.library.path=/usr/local/lib -Djmagick.systemclassloader=no in tomcat startup script

注:

用非root账号启动 weblogic时 在启动域中的 vi /bin/ startWebLogic.sh 添加CLASSPATH=${CLASSPATH}:/usr/local/tools/jmagick-6.4.0/lib:/usr/local/tools/Imagemagick/lib解决java.lang.UnsatisfiedLinkError: no JMagick in java.library.path问题

if [ "${MEDREC_WEBLOGIC_CLASSPATH}" != "" ] ; then

        if [ "${CLASSPATH}" != "" ] ; then

                CLASSPATH="${CLASSPATH}${CLASSPATHSEP}${MEDREC_WEBLOGIC_CLASSPATH}"

        else

                CLASSPATH="${MEDREC_WEBLOGIC_CLASSPATH}"

        fi

fi

CLASSPATH = ${CLASSPATH}:/usr/local/tools/jmagick-6.4.0/lib:/usr/local/tools/Imagemagick/lib

echo "."

echo "."

echo "JAVA Memory arguments: ${MEM_ARGS}"

echo "."

echo "WLS Start Mode=${WLS_DISPLAY_MODE}"

echo "."

echo "CLASSPATH=${CLASSPATH}"

echo "."

echo "PATH=${PATH}"

echo "."

"startWebLogic.sh" 188L, 5797C                   

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值