原文地址:http://www.iitshare.com/linux-install-imagemagick-jmagick.html

一、安装背景

最近在服务器上部署了HapiCMS的产品,因为其对图片的压缩是采用ImageMagick实现的,所以需要在服务器上面安装ImageMagick与jmagick,将操作的过程写了下来,和大家分享下,其中包含rpm方式安装、linux32位安装ImageMagick与jmagick、linux64位安装ImageMagick与jmagick,如果大家有什么问题可以进行留言,有时间的话会及时进行回复。

二、ImageMagick介绍

ImageMagick是用C语言开发图片处理程序。可以对图片进行改变大小、旋转、锐化、减色或增加特效等操作。对图片的操作,即可以通过命令行进行,也可以用C/C++、Perl、Java、PHP、Python或Ruby编程来完成。
ImageMagick 的官网是:http://www.imagemagick.org/script/index.php
由于我们是java项目,直接使用java通过JNI技术调用ImageMagick是不行的。因为ImageMagick开发时没有使用java JNI生成的头文件。可以使用jmagick解决,jmagick是由c语言开发的,开发时使用了java JNI生成的头文件,所以java可以通过JNI技术调用jmagick。jmagick再调用ImageMagick。这们我们处理图片使用的是jmagick暴露的java接口。也可以使用JNA来调用ImageMagick,JNA全称是Java Native Access,JNA是在JNI的基础上完善的,方便的我们开发的。JNA项目主页是https://github.com/twall/jna。使用JNA来调用ImageMagick就须要直接操作ImageMagick提供的C接口(API)。

三、确保系统已经安装以下包

1
2
3
4
5
6
7
8
9
10
# yum install libjpeg
# yum install libjpeg-devel
# yum install libpng
# yum install libpng-devel
# yum install libtiff
# yum install libtiff-devel
# yum install libungif
# yum install libungif-devel
# yum install freetype
# yum install zlib

可以通过下面的命令进行查看

1
#rpm -qa |grep libjpeg

如果没有安装,请通过yum命令安装以上依赖包

四、安装ImageMagick 不区分32位、64位操作系统

安装方式有两种,第一种方式是直接安装rpm方式安装,此方式也是本文推荐的方式
第二种方式是通过编译的方式安装,没有什么特殊要求建议还是用rpm方式安装
1、yum方式安装,具体如下:

1
2
3
# 如果以前安装过,卸载掉ImageMagick:
#yum remove ImageMagick
#yum install ImageMagick

2、编译的方式进行安装
从http://downloads.jmagick.org/6.4.0/这个网址下载需要安装的版本,可以下载的文件包括以下

1
2
3
4
5
6
7
8
9
ImageMagick-6.4.0-0.tar.gz       24-Mar-2008 00:15  11M
jmagick-6.4.0-3.i386.rpm         05-Jun-2009 09:27  172K
jmagick-6.4.0-3.src.rpm          05-Jun-2009 09:27  524K
jmagick-6.4.0-3.x86_64.rpm       05-Jun-2009 09:27  65K
jmagick-6.4.0-src.tar.gz         11-Feb-2009 10:27  521K
jmagick-debuginfo-6.4.0-3.x86_64.rpm  05-Jun-2009 09:27  135K
jmagick-linux-6.4.0-Q8.tar.gz         08-Dec-2008 19:27  56K
jmagick-linux-6.4.0-Q16.tar.gz    08-Dec-2008 19:27  56K
jmagick-linux-6.4.0-Q32.tar.gz    08-Dec-2008 19:27  56K

根据自己的需求安装相应版本的ImageMagick,具体的代码如下

1
2
3
4
5
6
#tar zxvf ImageMagick-6.4.0-0.tar.gz
#cd ImageMagick-6.4.0
#./configure --enable-shared --without-perl(如果不行就用./configure)
#make
#make install
#make check

3、安装完成后会生成一个convert

1
2
#find / -name convert
#convert --version

可以根据查看的结果判断安装是否成功。
然后可以在命令行下试试是否能用convert命令

1
#convert -geometry 100x200 源文件.jpg 处理后文件.gif (格式转换)

五、安装JMagick

安装的前提是下载了上面步骤三、安装ImageMagick中2里面说的安装包
1、安装依赖的库等
注意:无论是否有自己的 JRE/JDK 感觉这个还是必须要有,否则安装 RPM 会提示找不到相关的JAVA库
注意:安装 jmagick-src 的时候,如果没有这个 jman 帐号,会安装出错
Shell代码如下:

1
2
# yum install java;
# /usr/sbin/useradd –u 1000 –s /sbin/nologin jman;

2、32位操作系统 rpm 方式安装jmagick,shell代码如下:

1
2
# rpm –ivh jmagick-6.4.0-3.i386.rpm
# rpm –ivh jmagick-6.4.0-3.src.rpm

3、64位操作系统 rpm 方式安装jmagick,shell代码如下:

1
2
3
# rpm –ivh jmagick-6.4.0-3.x86_64.rpm
# rpm –ivh jmagick-6.4.0-3.src.rpm
# rpm –ivh jmagick-debuginfo-6.4.0-3.x86_64.rpm

32位操作系统无jmagick-debuginfo-6.4.0-3.x86_64.rpm文件
4、如果安装src出现以下错误

1
2
[root@localhost ~]# rpm -ivh jmagick-6.4.0-3.src.rpm
error: cannot create %sourcedir /usr/src/redhat/SOURCES

则执行以下语句即可

1
2
[root@localhost ~]# mkdir /usr/src/redhat
[root@localhost ~]# mkdir /usr/src/redhat/SOURCES

5、编译的方式安装jmagick,不区分32位还是64位,具体的Shell代码如下:

1
2
3
4
5
6
7
tar zvxf jmagick-6.4.0-src.tar.gz
cd jmagick-6.4.0-src
./configure --prefix=/opt360/jmagick-6.4.0
--with-java-home=/usr/local/java/jdk1.6.0_30
--with-magick-home=/opt360/ImageMagick-6.4.0
make all
make install

安装成功后,在/opt360/jmagick-6.4.0/lib/有一个jmagick-6.4.0.jar文件,在你的java项目中就使用这个jar文件处理图片,需要将jmagick-6.4.0.jar文件挪到TOMCAT的BIN目录,具体命令如下:

1
# mv *.jar /usr/local/apache-tomcat-6.0.35/bin

记住jmagick-6.4.0.jar是使用前面你指定的jdk1.6编译出来的,所以不能在jdk为1.5的环境下使用jmagick-6.4.0.jar。
如果你执行了make javadoc,在/opt360/jmagick-6.4.0/share/doc目录下就有文档。

安装中出现的问题解决

1、如果安装过程中出现以下错误:

1
2
error: Failed dependencies:
        jre is needed by jmagick-6.4.0-3.i386

说明没有安装上面步骤1中说明,安装JRE/JDK,请安装后再试
2、如果要测试的程序或者项目在Tomcat下,请重启Tomcat后再进行测试,我之前没有重启Tomcat,测试了几次还是报错,最后重启完Tomcat就好使了。

整个安装过程到此为止,欢迎大家阅读。

转载于:https://www.cnblogs.com/AloneSword/p/4544556.html

Linux安装ImageMagick与JMagick完成过程及配置相关推荐

  1. kali linux 安装驱动安装教程,Kali Linux 安装英伟达显卡过程实录

    原标题:Kali Linux 安装英伟达显卡过程实录 Linux 系统安装 Nvidia 显卡驱动从来都是个蛋疼的事...... 这方面 Ubuntu 作得比较好,将 Nvidia 的显卡驱动纳入了官 ...

  2. linux安装imagemagick,Linux系统下安装ImageMagick

    ImageMagick 是一个用来创建.编辑.合成图片的软件.它可以读取.转换.写入多种格式的图片.图片切割.颜色替换.各种效果的应用,图片的旋转.组合,文本,直线, 多边形,椭圆,曲线,附加到图片伸 ...

  3. centos8 yum太慢_如何提高Linux安装软件的速度?给CentOS8配置DNF/YUM国内下载源

    CentOS Linux长期以来一直存在一个不和谐的问题:Python2和Python3如何共存? 在CentOS Linux 8以前,系统默认的Python版本是2.x,装上个3.x还跟后娘养的一样 ...

  4. Linux安装MariaDB(Mysql)和简单配置

    安装MariaDB 安装命令 yum -y install mariadb mariadb-server 安装完成MariaDB,首先启动MariaDB systemctl start mariadb ...

  5. linux安装telnet服务

    文章目录 前言 一.telnet是什么? 二.使用步骤 1.安装telent 2.重新启动守护进程 3.测试 总结 前言 最新公司需要迁移项目需要用到telnet命令,趁此机会做个总结归纳 一.tel ...

  6. Linux 安装FastDFS 图解教程

    1.创建fastdfs安装目录,我的是在etc/fastdfs. 由于我在虚拟机搭建 首先在etc目录下的hosts文件添加一行IP地址 192.168.1.14 file.gaci.com 如果要本 ...

  7. java jdk linux 安装_Linux安装JDK

    Linux环境下使用Java,首先需要对JDK进行安装和配置,以下是Linux安装JDK和JDK环境配置的详细步骤: Linux安装JDK第一步:官网下载JDK 在此页面找到Linux系统的安装包,如 ...

  8. 在LInux系统上安装ImageMagick

    一.ImageMagick的安装背景 项目中需要获得ECG图片,使用心电插件只能生成PDF,因此需要在Linux系统上安装ImageMagick程序将PDF转化成图片 二.ImageMagick介绍 ...

  9. linux安装软件imagemagick,linux下的ImageMagick安装方法

    linux下的ImageMagick安装方法 由于没有图形化界面的支持,在Linux(CentOS 6.4 x64)上的配置相对Windows XP还是麻烦了一点. 1.下载ImageMagick和J ...

最新文章

  1. 创业5年,我有5点关于人的思考
  2. mysql 加快复制进程_MySQL并发复制进程演进
  3. oracle 物化视图 --转
  4. HDU1555 How many days?【水题+模拟】
  5. 记录一次多线程与Map.keySet() 出现的“并发”问题
  6. C语言:有N个数从小到大的顺序存放在一个数组中,输入一个数,要求用折半查找法找出该数是数组中第几个数。如果不在数组中,打印“not found”。
  7. PostgreSQL与MySQL语法对比总结
  8. axure8 事件改变样式_AxureRP8实战手册-案例2(文本框:边框变色)
  9. 电子设计教程41:软启动电路-电阻+并联开关
  10. 学计算机高考英语听力考试,高考英语听力机考,常识、实操、备考,你要知道这些...
  11. 基于Python的OpenCV+TensorFlow+Keras人脸识别实现
  12. [集合竞价-AI量化]天天做超短,集合竞价的盘口语言你真的读懂了麽?
  13. C++实现gotoxy函数
  14. 你也能看懂的:主成分分析法
  15. ORACLE公司的历史
  16. Windows 任务类别59、81分别表示什么事件?
  17. 64位机器上的控件注册
  18. 小米品牌:图腾化的胜利
  19. github个人主页
  20. 微型计算机飞傲m9,千元级全功能覆盖的水桶机 飞傲M9评测

热门文章

  1. 模拟文字接龙,班里一天几个接龙真的烦死啦(仅供娱乐)
  2. c语言ascii码表_新手小白整理C语言笔记备忘,带你十分钟理解C语言
  3. 医学图像处理期末复习(三)
  4. java类与对象明星,明星档案的
  5. java存入光盘_java 这是 学习笔记(jdk7)书中的光盘里的源码,不知大家需要不,里面都是新手 的好 Develop 238万源代码下载- www.pudn.com...
  6. linux centos7开放端口命令,Centos7开放端口教程
  7. django登录连接html,Django——登录功能(连接mysql)
  8. python代码覆盖率测试_利用coverage工具进行Python代码覆盖率测试
  9. 来了,2020年湖南省电赛获奖名单!有你学校吗?
  10. 时隔6年,NASA再造仿人机器人,或将在太空工作,应对严苛环境