论坛首页 编程语言技术论坛

在MacOSX上安装RMagick[Installing RMagick on OS X一文的翻译]

浏览 9691 次
该帖已经被评为良好帖
作者 正文
   发表时间:2007-07-16  
在MacOSX上安装RMagick
–前几天装RMagick这东西搞得很复杂,实际上理想状态下应该是一路绿灯的,把找到的这篇一路绿灯的文章翻译下方便大众

原文:http://rmagick.rubyforge.org/install-osx.html
译文:http://color-magic.cn/45
初次翻译,请多包涵,有错误请与我联系指正,谢谢
0000sir@gmail.com
north-path@hotmail.com

这篇文章阐述如何在MacOSX上安装RMagick, ImageMagick或GraphicsMagick,以及ImageMagick或GraphicsMagick相关的运行库,只需安装ImageMagick和GraphicsMagick其中之一即可,安装过程对于二者是相同的.以下操作平台是新安装于PowerPC芯片的PowerBookG4上的MacOSX10.4.8(Tiger),对于Intel平台一样适用,如果你的MacOS的版本不同,可能会有一点细节不一样(译者:好像没什么不一样)以下将要用到OSX的安装光盘,需要网络连接,还有最少一小时的空闲时间(除非你真的是”宽带”,原文大意如此,灵活运用到国内ADSL….),最好熟悉bash终端操作

第一步:安装X11
前面这两个步骤需要用到OSX安装光盘.
ImageMagick/GraphicsMagick利用X11来显示图片,这个步骤就来安装X11.插入系统安装盘,Finder窗口自己打开时,选择”自定义安装”(原文为Optional Intalls,不记得中文环境下是什么了).一直”下一步”直到”安装类型”(Install Type)这一步.从包选择列表的应用程序列表里选择X11,点击”安装”.等安装完成后X11程序将会出现在”应用程序/实用工具”里

第二步:安装Xcode Tools以及X11 SDK
RMagick,ImageMagick/GraphicsMagick以及其它一些我们将要安装的依赖包都是以C或C++源码形式提供的,因此需要将它们编译为可执行的镜像.在这个步骤我们会安装GCC编译器和其它一些开发工具.在第五步配置ImageMagick/GraphicsMagick的时候,配置脚本会需要某些X11 SDK中的一些文件,所以需要在这一步安装X11 SDK.如果你有ADC(Apple Developer Conneciton)帐号(免费而且很容易获得–我也有一个但是我总是忘记密码-_-#),你可以从ADC网站下载Xcode Tools的最新版本.OSX安装光盘里也有Xcode Tools安装文件,其中的”About Xcode Tools.pdf”文件包含完整的安装说明,但是简单地说就是在Finder窗口中双击XcodeTools.mkpg然后跟着向导一步步走就行了.
———————————————————————–
如果你的磁盘空间有限,在选择”安装类型”(Installation Type)时点击”自定义”(Customize)按钮,只选择以下安装包:Developer Tools Software, gcc 4.0,在”Software Development Kits”列表中选择”Mac OS X SDK, BSD SDK以及X11 SDK.如果你这样做,在安装完Xcode Tools后,在终端中用以下命令来检查GCC的版本:

gcc --version

正常的版本应该是gcc 4.0,但是我从安装光盘里安装Xcode tools并且只选择GCC 4.0的时候,安装程序却建立了两个指向不存在的GCC-3.3的符号链接,补救的办法是删掉这两个符号链接而且gcc-4.0编译器代替它们

sudo rm /usr/bin/gcc /usr/bin/cc
sudo ln /usr/bin/gcc-4.0 /usr/bin/gcc
sudo ln /usr/bin/gcc-4.0 /usr/bin/cc

使用从ADC下载的最新版Xcode Tools并不会出现这个问题
———————————————————————–

第三步:安装MacPorts
打开”安装MacPorts”网页(http://trac.macosforge.org/projects/macports/wiki/InstallingMacPorts)根据说明安装MacPorts,上面已经安装过Xcode Tools和X11,可以直接跳过那两步.以下部分假设你是按默认的方式安装的MacPorts.

第四步:安装相关依赖包(delegate libraries不知道怎么翻译的好)
还没有打开终端的赶紧打开,下面的操作要由命令来完成.ImageMagick/GraphicsMagick内建了GIF格式支持,但是其它格式需要单独安装.在这个步骤我们将用MacPorts来安装这些常用库.这些依赖包提供读写JPEG,PNG,WMF格式的图片以及读写PDF文件的支持,并且支持用TrueType和Postscript字体来标注图片.ImageMagick/GraphicsMagick支持众多其它格式的图像格式.如果需要处理其它格式,现在是安装其它需要的依赖包的时候.查看ImageMagick/GraphicsMagick的README.txt文件获得更多其它依赖包的信息.大多数都可以从MacPorts安装.
输入以下命令:

sudo port install jpeg
sudo port install libpng
sudo port install libwmf
sudo port install freetype
sudo port install ghostscript

在继续之前,确认你正在使用的是正确版本的FreeType库.在第一步安装的X11中包含了FreeType库,并且刚才又通过MacPorts安装了另一个版本在/opt/local中.在编译ImageMagick/GraphicMagick时需要用到从MacPorts安装的版本.用以下命令来检查安装是否正确:
freetype-config –cflags

应该会看到

-I/opt/local/include/freetype2 -I/opt/local/include

如果你看到的是

-I/usr/X11R6/include -I/usr/X11R6/include/freetype2

修改PATH环境变量使得/opt/local/bin代替/usr/X11R6/bin.在得到正确的freetype-config正确的输出之前不要尝试安装ImageMagick/GraphicsMagick

第五步:安装ImageMagick或GraphicsMagick
第五步:安装ImageMagick或者GraphicsMagick
http://www.imagemagick.orghttp://www.graphicsmagick.org下载最新版本到临时目录。(注意:Daniel J.说目录名不能包含有空格。)解压缩并进入解压后的目录。例如如果下载的文件名为 ImageMagick.tar.gz,可以使用以下命令(X.Y.Z表示ImageMagick的版本号):
tar xvzf ImageMagick.tar.gz
cd ImageMagick-X.Y.Z

类似的,如果你下载的是GraphicsMagick-LATEST.tar.gz,则使用如下命令(X.Y.Z表示GraphicsMagick的版本号):

tar xvzf GraphicsMagick-LATEST.tar.gz
cd GraphicsMagick-X.Y.Z

此时目录下应该有一个名为configure的可执行脚本。
以下命令用来配置ImageMagick/GraphicsMagick:
export CPPFLAGS=-I/opt/local/include
export LDFLAGS=-L/opt/local/lib
./configure --prefix=/opt/local --disable-static --with-modules --without-perl \
   --without-magick-plus-plus --with-quantum-depth=8 \
   --with-gs-font-dir=/opt/local/share/ghostscript/fonts

configure命令必须在同一行输入,下面是各选项作用的说明

* –prefix=/opt/local 让ImageMagick/GraphicsMagick与MacPorts的库文件安装到同一个目录。如果你想要安装到其它目录,则输入不同的目录路径,如果不声明–prefix,默认会将其安装到/usr/local。
* –disable-static和–with-modules使得ImageMagick/GraphicsMagick以动态链接库的方式安装
现在安装ImageMagick/GraphicsMagick只是为了在Ruby中使用,所以我用–without-perl和–without-magick-plus-plus以免去安装Perl和C++的支持
* –with-quantum-depth=8配置ImageMagick使用8位的色深。默认是16位。参与RMagick Hints & Tips Forum论坛中的讨论Speed up your RMagick apps in 1 easy step了解这个选项有什么作用。
* –with-gs-font-dir=/opt/local/share/ghostscript/fonts让ImageMagick/GraphicsMagick知道Ghostscript字体安装在哪个角落里。
如果你某个目录里有“标准”的windows TrueType字体,也可以设置–with-windows-font-dir=选项让ImageMagick/GraphicsMagick使用它们。
查看ImageMagick/GraphicsMagick的README.txt文件了解更多选项的信息。
configure脚本会产生一大堆输出,最后一页是最有用的。如果你成功地执行前面的所有步骤,并且使用默认的配置,configure的输出可能与下面的类似:
引用

ImageMagick is configured as follows. Please verify that this configuration
matches your expectations.

Host system type : powerpc-apple-darwin8.0.0

                  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=no              no
Quantum depth     --with-quantum-depth=8        8

Delegate Configuration:
BZLIB             --with-bzlib=yes              yes
DJVU              --with-djvu=yes               no
DPS               --with-dps=yes                no (failed tests)
FlashPIX          --with-fpx=no                 no
FontConfig        --with-fontconfig=yes         no
FreeType          --with-freetype=yes           yes
GhostPCL          None                          pcl6 (unknown)
Ghostscript       None                          gs (8.54)
Ghostscript fonts --with-gs-font-dir=/opt/local/share/ghostscript/fonts/        /opt/local/share/ghostscript/fonts//
Ghostscript lib   --with-gslib=yes              no
Graphviz          --with-gvc=yes                no
JBIG              --with-jbig=yes               no
JPEG v1           --with-jpeg=yes               yes
JPEG-2000         --with-jp2=yes                no
LCMS              --with-lcms=yes               no
Magick++          --with-magick-plus-plus=no    no
PERL              --with-perl=no                no
PNG               --with-png=yes                yes
RSVG              --with-rsvg=yes               no
TIFF              --with-tiff=yes               no
Windows fonts     --with-windows-font-dir=      none
WMF               --with-wmf=yes                yes
X11               --with-x=                     yes
XML               --with-xml=yes                yes
ZLIB              --with-zlib=yes               yes

X11 Configuration:
  X_CFLAGS     =
  X_PRE_LIBS   = -lSM -lICE
  X_LIBS       = -L/usr/X11R6/lib
  X_EXTRA_LIBS =

Options used to compile and link:
  PREFIX      = /opt/local
  EXEC-PREFIX = /opt/local
  VERSION     = X.Y.Z
  CC          = gcc
  CFLAGS      = -g -O2 -Wall -W -D_THREAD_SAFE
  CPPFLAGS    = -I/opt/local/include
  PCFLAGS     =
  DEFS        = -DHAVE_CONFIG_H
  LDFLAGS     = -L/opt/local/lib -L/usr/X11R6/lib -L/opt/local/lib -lfreetype -lz
  LIBS        = -lMagick -lfreetype -ljpeg -lXext -lSM -lICE -lX11 -lXt -lbz2 -lz -lpthread -lm -lpthread
  CXX         = CC
  CXXFLAGS    = -g -O2 -Wall -W -D_THREAD_SAFE

当然,你下载的ImageMagick/GraphicsMagick的版本号会替换掉里面的VERSION X.Y.Z。检查你的输出以确定ImageMagick/GraphicsMagick知道所有依赖包的位置。在bzlib, FreeType, JPEG v1, PNG, WMF, X11, XML, and ZLIB的Value列应该显示的是yes。
如果你得到了以上输出就可以继续下面的步骤了,如果缺少某些依赖包则必须先解决这个问题,重新运行configure脚本直到结果正确,注意小心输入命令确保输入正确。
上面的范例来源于ImageMagick的配置脚本,GraphicsMagick的使用者也许会有一些不一样。
完成ImageMagick/GraphicsMagick的配置后输入下面两行命令:
make
sudo make install

从哪里得到更多信息?
查看该页面了解更多ImageMagick的安装内容。
查看该页面了解更多GraphicsMagick的安装内容。

第六步:安装RMagick
最艰难的部分已经过去了,现在只需要安装RMagick就搞定了,有两条路可以选择:
A.通过rubygems安装
B.从源码安装
通过gem安装只需要一个命令,但是首先要安装RubyGems,而且如果出了错是很难去处理的。从源码安装则会有较详细的输出,这在出现问题的时候比较有用。
选择A.通过gem安装rmagick
执行以下命令:
sudo gem install rmagick

将会显示以下内容:
引用

Bulk updating Gem source index for: http://gems.rubyforge.org
Building native extensions. This could take a while…
Successfully installed rmagick-X.Y.Z

要注意的是,gem命令会有很长的一段时间不会产生任何输出,”Successfully installed”这条消息也并不意味着RMagick安装成功,RMagick的安装过程也可能发生gem不知道的错误。下面的irb会话在证明安装成功上更有说服力。(消息中的软件版本号取决于你所使用的版本)
$ irb -rubygems -r RMagick
irb(main):001:0> puts Magick::Long_version
This is RMagick 1.15.3 ($Date: 2007/01/20 15:45:29 $) Copyright (C) 2007 by Timothy P. Hunter
Built with ImageMagick 6.3.2 02/23/07 Q8 http://www.imagemagick.org
Built for ruby 1.8.5 (2006-12-25 patchlevel 12) [powerpc-darwin8.0.0]
Web page: http://rmagick.rubyforge.org
Email: rmagick@rubyforge.org
=> nil

RMagick的HTML格式文档会被自动安装在/opt/local/share/RMagick/index.html.
选择B.从源码安装RMagick
从RubyForge下载RMagick的源码包(如果你还没下的话,居然?)并将其解压到临时文件夹(前面已经提过,这个文件夹名字中不能有空格),进放该目录。
tar xvzf RMagick-X.Y.Z.tar.gz
cd RMagick-X.Y.Z

输入命令:
./configure

这里并不需要使用–prefix,RMagick会安装在Ruby搜索路径中适当的目录里。
该configure脚本可接受一些RMagick特定的配置参数,输入./configure –help以查看详细信息。
make

make步骤会占用不少时间,你得注意编译中不要出现错误,如果错误信息与ImageMagick/GraphicsMagick配置有关并且多于5个范例失败则会出现错误报告,解决这些问题并且重新安装ImageMagick/GraphicsMagick。
sudo make install

RMagick HTML文档会自动安装在/opt/local/share/RMagick/index.html.

读完这些你应该已经完整地安装好了ImageMagick/GraphicsMagick和RMagick。
——终于译完了,翻译简直太痛苦了。
在我的博客上写完帖过来的,相信我我已经没有力气再排一次版了,不好意思,要觉得看着难受请到译文地址看吧 http://color-magic.cn/45

又ps.这次不会再次被打入新手区吧……

----updated on 2007-07-20
修改了格式,这样阅读起来要方便一点~~没人看……真伤心……
   发表时间:2007-08-02  
楼主,你帮了我的大忙,实在是感谢呀!
我为了安装RMagick都搞了一天了,太谢谢了!
0 请登录后投票
   发表时间:2007-08-26  
居然有人看……我真是太感动了……
0 请登录后投票
   发表时间:2007-10-11  
感谢,应该会很有帮助!
0 请登录后投票
   发表时间:2007-10-22  
首页推荐了哦耶~

补充一下:

在debian上装rmagick,比吃饭还简单~~
apt-get install librmagick-ruby
正在读取软件包列表… 完成0%
正在分析软件包的依赖关系树… 完成%
将会安装下列额外的软件包:
libice6 libjasper-1.701-1 liblcms1 libmagick9 librmagick-ruby1.8 libsm6
libtiff4 libxt6
建议安装的软件包:
libjasper-runtime liblcms-utils libwmf-bin librmagick-ruby-doc
下列【新】软件包将被安装:
libice6 libjasper-1.701-1 liblcms1 libmagick9 librmagick-ruby
librmagick-ruby1.8 libsm6 libtiff4 libxt6
共升级了 0 个软件包,新安装了 9 个软件包,要卸载 0 个软件包,有 1 个软件未被升级。
需要下载 2423kB 的软件包。
解压缩后会消耗掉 7668kB 的额外空间。
0 请登录后投票
   发表时间:2007-10-27  
已经安装了ImageMagick后.谁知道Windows2000下怎么安装RMagick吗?
0 请登录后投票
   发表时间:2007-11-06  
win2000...对不起我还真不知道,我一般都不用windows的机器。。。
0 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics