ImageMagic and Jmagick
安装Image Magick
jmagick 的最新版本是6.4.0,最后一次更新是 2008-08-05。
在changelog 里面描述,支持Image Magick 6.3.9 - 6.4.0,6.4.1-2 也支持,但是需要修改源代码,因此放弃,选择6.4.0版本。
下载6.4.0 版本,解压缩,进入该目录,可以看到Install-XXX.txt的几个文件,分别描述了在不同系统下如何编译和安装,此处略过。
安装JMagick
下载6.4.0 版本,解压缩,进入该目录,按照INSTALL 文件描述的方法编译、安装。
注:make 需要root 权限!
在Mac 下的安装
我想作者可能没有在10.5.x 上做过测试!
configure 之后,请修改Make.rules 文件的175、176行,将行前的空格改为TAB。
# sudo make all
此时,还会报一个错误,头文件中的generated/magick/magick_MagickImage.h 中的Java_magick_MagickImage_blurImageChannel 函数重复定义。
编辑该文件,将127、128 行,注释掉,再次执行:
# sudo make all
编译成功!
# sudo make install
测试!
#sudo make test
有7 个错误,集中在test/magicktest/MagickTesttools.java # compareImage,貌似是误差超过了允许范围。
配置JNI
如果你不知道你的java.library.path 有哪些,可以写一个类打印这个环境变量 java.library.path。
我将JNI 库放在/Users/wangchen/Library/Java/Extensions 下,建立一个符号链接即可,
# ln -s $JMAGICK_INSTALLATION/lib/libJMagick-6.4.0.so /Users/wangchen/Library/Java/Extensions/libJMagick.jnilib
注意名字不能错!
在IDE 里面加入对$JMAGICK_INSTALLATION/lib/jmagick-6.4.0.jar 的依赖,就可以写自己的程序了!
FAQ:
1. 无法找到 libXext.la
我在安装Snow Leopard 后,再次编译Jmagick 时出现这个错误,大概是因为之前的XCode 一直有X11的lib,某版本之后却没有,具体原因不晓得。
使用附件中的 fix-x11-la.sh 解决此问题,方法很简单:
1.1 创建相关la 文件:sudo fix-x11-la.sh create
1.2 Undo:sudo fix-x11-la.sh undo
在Linux 下的安装
jmagick 的最新版本是6.4.0,最后一次更新是 2008-08-05。
在changelog 里面描述,支持Image Magick 6.3.9 - 6.4.0,6.4.1-2 也支持,但是需要修改源代码,因此放弃,选择6.4.0版本。
下载6.4.0 版本,解压缩,进入该目录,可以看到Install-XXX.txt的几个文件,分别描述了在不同系统下如何编译和安装,此处略过。
安装JMagick
下载6.4.0 版本,解压缩,进入该目录,按照INSTALL 文件描述的方法编译、安装。
注:make 需要root 权限!
在Mac 下的安装
我想作者可能没有在10.5.x 上做过测试!
configure 之后,请修改Make.rules 文件的175、176行,将行前的空格改为TAB。
# sudo make all
此时,还会报一个错误,头文件中的generated/magick/magick_MagickImage.h 中的Java_magick_MagickImage_blurImageChannel 函数重复定义。
编辑该文件,将127、128 行,注释掉,再次执行:
# sudo make all
编译成功!
# sudo make install
测试!
#sudo make test
有7 个错误,集中在test/magicktest/MagickTesttools.java # compareImage,貌似是误差超过了允许范围。
配置JNI
如果你不知道你的java.library.path 有哪些,可以写一个类打印这个环境变量 java.library.path。
我将JNI 库放在/Users/wangchen/Library/Java/Extensions 下,建立一个符号链接即可,
# ln -s $JMAGICK_INSTALLATION/lib/libJMagick-6.4.0.so /Users/wangchen/Library/Java/Extensions/libJMagick.jnilib
注意名字不能错!
在IDE 里面加入对$JMAGICK_INSTALLATION/lib/jmagick-6.4.0.jar 的依赖,就可以写自己的程序了!
FAQ:
1. 无法找到 libXext.la
我在安装Snow Leopard 后,再次编译Jmagick 时出现这个错误,大概是因为之前的XCode 一直有X11的lib,某版本之后却没有,具体原因不晓得。
使用附件中的 fix-x11-la.sh 解决此问题,方法很简单:
1.1 创建相关la 文件:sudo fix-x11-la.sh create
1.2 Undo:sudo fix-x11-la.sh undo
在Linux 下的安装