安裝過程中命令:
cd /usr/local/src
yum install freetype* ghostscript* libjpeg* libpng* libtiff* zlib*
wget http://pkgs.fedoraproject.org/repo/pkgs/ImageMagick/ImageMagick-6.2.8-0.tar.bz2/484cd7b62fac2164e8257449405f2563/ImageMagick-6.2.8-0.tar.bz2
wget http://downloads.jmagick.org/6.2.6/JMagick-6.2.6-0.tar.gz
------------------
tar xjvf ImageMagick-6.2.8-0.tar.bz2
tar xzvf JMagick-6.2.6-0.tar.gz
cd /usr/local/src/ImageMagick-6.2.8
./configure -prefix=/usr/local/ImageMagick && make && make install
cd /usr/local/src/JMagick-6.2.6-0
./configure --with-magick-home=/usr/local/ImageMagick && make all && make install
# copy libs into specific directories
cp lib/libJMagick.so /usr/lib64/libJMagick.so
cp lib/libJMagick.so ${JAVA_HOME}/jre/lib/libJMagick.so
cp lib/libJMagick.so ${JAVA_HOME}/jre/lib/ext/libJMagick.so
cp lib/libJMagick.so ${JAVA_HOME}/lib/libJMagick.so
cp lib/libJMagick.so /usr/local/lib/libJMagick.so
cp lib/jmagick.jar ${JAVA_HOME}/bin/jmagick.jar
cp lib/jmagick.jar ${JAVA_HOME}/jre/jmagick.jar
cp lib/jmagick.jar ${JAVA_HOME}/jre/lib/jmagick.jar
cp lib/jmagick.jar ${JAVA_HOME}/jre/lib/ext/jmagick.jar
cp lib/jmagick.jar /usr/local/lib/jmagick.jar
cd /usr/local/lib
cp libJMagick.so /usr/lib64/libJMagick.so
cp libJMagick.so ${JAVA_HOME}/jre/lib/libJMagick.so
cp libJMagick.so ${JAVA_HOME}/jre/lib/ext/libJMagick.so
cp libJMagick.so ${JAVA_HOME}/lib/libJMagick.so
cp libJMagick.so /usr/local/lib/libJMagick.so
cp jmagick.jar ${JAVA_HOME}/bin/jmagick.jar
cp jmagick.jar ${JAVA_HOME}/jre/jmagick.jar
cp jmagick.jar ${JAVA_HOME}/jre/lib/jmagick.jar
cp jmagick.jar ${JAVA_HOME}/jre/lib/ext/jmagick.jar
cp jmagick.jar /usr/local/lib/jmagick.jar
遇到的問題
Magick++/lib/Image.cpp: In function 'void Magick::InitializeMagick(const char*)':
Magick++/lib/Image.cpp:3811: error: 'atexit' was not declared in this scope
make: *** [Magick++/lib/Image.lo] 錯誤 1
后來發(fā)現(xiàn)原來是gcc版本的問題。新系統(tǒng)的gcc版本比較新,對于舊的寫法有些不兼容。
舊的版本gcc某些不需要明確的聲明include的地方,在新的gcc中不再支持,必須明確的聲明。
進(jìn)入ImageMagick目錄下的Magick++/lib目錄下,編輯Image.cpp文件,在頭部include聲明的代碼中增加一行:
#include <stdlib.h>
重新make就可以了。
make[1]: *** [PerlMagick/Makefile] 錯誤 2
解決方法:
yum -y install perl-CPAN
Unable to find ImageMagick header files