我已经在运行 centos 6.4 的服务器上安装了 ImageMagick
安装 ImageMagick
版本非常旧:6.5.4-7 2012-05-07 Q16
我与 ImageMagick 的官方论坛讨论了这个问题。他们告诉我,我正在运行旧版本的 ImageMagick。
使用 yum,我们通常不需要担心依赖关系。我创建了一些使用 ImageMagick 最新版本的脚本。但我的服务器正在运行旧版本以支持这些脚本。
1) 那么,如果我删除 ImageMagick 的 yum 版本,在编译 ImageMagick 之前应该安装哪些依赖项?正常运行的脚本不会受到此更新的影响。
2) 目前,/usr/bin/convert 是路径。我如何编译并保持相同的路径?
--prefix="/usr" (对吗?)
我没有任何测试服务器。所以,我需要你的帮助。我是 windows(7) 用户!
答案1
安装
rpmbuild
:yum install rpmbuild -y
从 Fedora repo 安装 src.rpm:
cd ~/rpmbuild/SPECS
为您的平台构建包(如果您正在运行,请替换
x86_64
为):i686
i686
rpmbuild --target x86_64 -ba ImageMagick.spec
如果有任何依赖项 - rpmbuild 会告诉你,因此使用以下命令安装这些包
yum install
尝试再次构建:
rpmbuild --target x86_64 -ba ImageMagick.spec
结果将是:
Wrote: /root/rpmbuild/SRPMS/ImageMagick-6.7.8.9-5.el6.src.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-6.7.8.9-5.el6.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-devel-6.7.8.9-5.el6.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-djvu-6.7.8.9-5.el6.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-doc-6.7.8.9-5.el6.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-perl-6.7.8.9-5.el6.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-c++-6.7.8.9-5.el6.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-c++-devel-6.7.8.9-5.el6.x86_64.rpm
使用 rpm -Uvh 安装构建的软件包
我这样做了,到目前为止没有遇到任何问题。如果您遇到任何问题 - 将会有弃用的功能,或者您需要重建包含使用 (ImageMagick-devel
而不是 ImageMagick)构建的组件的包。
预期配置将如下所示:
Option Value
-------------------------------------------------------------------------------
Shared libraries --enable-shared=yes yes
Static libraries --enable-static=no no
Module support --with-modules=yes yes
GNU ld --with-gnu-ld=yes yes
Quantum depth --with-quantum-depth=16 16
High Dynamic Range Imagery
--enable-hdri=no no
Delegate Configuration:
BZLIB --with-bzlib=yes yes
Autotrace --with-autotrace=no no
Dejavu fonts --with-dejavu-font-dir=default /usr/share/fonts/dejavu/
DJVU --with-djvu=yes yes
DPS --with-dps=no no
FFTW --with-fftw=yes no
FlashPIX --with-fpx=yes no
FontConfig --with-fontconfig=yes yes
FreeType --with-freetype=yes yes
GhostPCL None pcl6 (unknown)
GhostXPS None gxps (unknown)
Ghostscript None gs (8.70)
Ghostscript fonts --with-gs-font-dir=default /usr/share/fonts/default/Type1/
Ghostscript lib --with-gslib=yes yes
Graphviz --with-gvc=no
JBIG --with-jbig=yes no
JPEG v1 --with-jpeg=yes yes
JPEG-2000 --with-jp2=yes yes
LCMS v1 --with-lcms=yes yes
LCMS v2 --with-lcms2=yes no
LQR --with-lqr=yes no
LZMA --with-lzma=yes no
Magick++ --with-magick-plus-plus=yes yes
OpenEXR --with-openexr=yes yes
PERL --with-perl=yes /usr/bin/perl
PANGO --with-pango=yes yes
PNG --with-png=yes yes
RSVG --with-rsvg=yes yes
TIFF --with-tiff=yes yes
WEBP --with-webp=yes no
Windows fonts --with-windows-font-dir= none
WMF --with-wmf=yes yes
X11 --with-x=yes yes
XML --with-xml=yes yes
ZLIB --with-zlib=yes yes
所以,一切都是按照现有的制度建立的。
对于相同(仅重建),可以运行rpmbuild --rebuild --target x86_64 ImageMagick-6.7.8.9-5.fc19.src.rpm
- 如果您不想在将来进行任何更改,结果将是相同的。
答案2
我认为此主题解释了您的要求。虽然该过程适用于 CentOS 6.3,但我预计在 6.4 上重建它不会出现任何严重问题。