@peccul is peccu

(love peccu '(emacs lisp cat outdoor bicycle mac linux coffee))

= とりあえず,MacPortsでrb-rmagickがインストールできない時の話

[2010-09-08 17:47:32]
>>>[ruby]
>>>[ports]

うれしいのか悲しいのか,毎日ブログ続いてますね

インストールが途中で止まるなーと思って.

% sudo port install rb-rmagick
--->  Computing dependencies for rb-rmagick
--->  Building rb-rmagick

僕にgruffのインストール方法を教えてください.ぷぎゃー

こうするとrb-rmagickはインストールできました

% locate rb-rmagick
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick/Portfile
# portのディレクトリみーっけ
% cd /opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick% ls -la
total 8
drwxr-xr-x   4 root   136 2010-09-08 14:06 .
drwxr-xr-x 339 root 11526 2010-08-29 00:00 ..
-rw-r--r--   1 root   962 2010-04-11 05:30 Portfile
lrwxr-xr-x   1 root   115 2010-09-08 14:06 work -> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick% cd work
# 作業フォルダっぽい.移動
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick/work% ls
RMagick-2.9.0
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick/work% cd RMagick-2.9.0 
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick/work/RMagick-2.9.0% ls
# お,tarファイル展開したところかなー
ChangeLog  README-Mac-OSX.txt  README.html  build_tarball.rake	doc  examples  ext  lib  metaconfig  post-clean.rb  post-install.rb  post-setup.rb  rmagick.gemspec  setup.rb  uninstall.rb
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick/work/RMagick-2.9.0% open README.html
# ふむふむ.ruby setup.rbしたらいいのね
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick/work/RMagick-2.9.0% less README-Mac-OSX.txt
# ついでにみてみた.
For installation instructions see http://rmagick.rubyforge.org/install-osx.html
# なんじゃそりゃ
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick/work/RMagick-2.9.0% which ruby
/Users/peccu/Gentoo/usr/bin/ruby
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick/work/RMagick-2.9.0% /opt/local/bin/ruby --version
ruby 1.8.7 (2010-08-16 patchlevel 302) [i686-darwin10]
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick/work/RMagick-2.9.0% /opt/local/bin/ruby setup.rb 
---> lib
---> lib/rvg
<--- lib/rvg
<--- lib
---> ext
---> ext/RMagick
/opt/local/bin/ruby /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/ext/RMagick/extconf.rb
checking for Ruby version >= 1.8.2... /opt/local/lib/ruby/1.8/mkmf.rb:210:in `initialize': Permission denied - mkmf.log (Errno::EACCES)
	from /opt/local/lib/ruby/1.8/mkmf.rb:210:in `open'
	from /opt/local/lib/ruby/1.8/mkmf.rb:210:in `open'
	from /opt/local/lib/ruby/1.8/mkmf.rb:237:in `postpone'
	from /opt/local/lib/ruby/1.8/mkmf.rb:613:in `checking_for'
	from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/ext/RMagick/extconf.rb:93
setup.rb:655:in `command': system("/opt/local/bin/ruby" "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/ext/RMagick/extconf.rb") failed (RuntimeError)
	from setup.rb:660:in `ruby'
	from setup.rb:1238:in `extconf'
	from setup.rb:1230:in `config_dir_ext'
	from setup.rb:1532:in `__send__'
	from setup.rb:1532:in `traverse'
	from setup.rb:1549:in `dive_into'
	from setup.rb:1530:in `traverse'
	from setup.rb:1534:in `traverse'
	from setup.rb:1533:in `each'
	from setup.rb:1533:in `traverse'
	from setup.rb:1549:in `dive_into'
	from setup.rb:1530:in `traverse'
	from setup.rb:1524:in `exec_task_traverse'
	from setup.rb:1519:in `each'
	from setup.rb:1519:in `exec_task_traverse'
	from setup.rb:1223:in `exec_config'
	from setup.rb:991:in `exec_config'
	from setup.rb:812:in `invoke'
	from setup.rb:772:in `invoke'
	from setup.rb:1578
/opt/local/var/macports/sources/rsync.macports.org/release/ports/ruby/rb-rmagick/work/RMagick-2.9.0% sudo /opt/local/bin/ruby setup.rb
# sudoいるみたいなのでやりなおし
Password:
---> lib
---> lib/rvg
<--- lib/rvg
<--- lib
---> ext
---> ext/RMagick
/opt/local/bin/ruby /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/ext/RMagick/extconf.rb
checking for Ruby version >= 1.8.2... yes
checking for /usr/bin/gcc-4.2... yes
checking for Magick-config... yes
checking for ImageMagick version >= 6.3.0... yes
checking for HDRI disabled version of ImageMagick... yes
checking for stdint.h... yes
checking for sys/types.h... yes
checking for magick/MagickCore.h... yes
checking for InitializeMagick() in -lMagick... no
checking for InitializeMagick() in -lMagickCore... yes

# (大幅に省略)

<--- ext/RMagick
<--- ext
setup.rb: entering post-setup phase...
post-setup.rb: setting up documentation...
/opt/local/bin/ruby -I /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib -I /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./ext/RMagick font_styles.rb
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib/rvg/misc.rb:322:in `get_type_metrics': unable to read font `/opt/local/share/ghostscript/fontsx/n022003l.pfb' @ error/annotate.c/RenderFreetype/1056: `(null)' (Magick::ImageMagickError)
	from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib/rvg/misc.rb:322:in `render'
	from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib/rvg/misc.rb:697:in `text'
	from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib/rvg/text.rb:65:in `add_primitives'
	from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib/rvg/container.rb:72:in `add_primitives'
	from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib/rvg/container.rb:72:in `each'
	from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib/rvg/container.rb:72:in `add_primitives'
	from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib/rvg/rvg.rb:264:in `add_outermost_primitives'
	from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib/rvg/rvg.rb:264:in `each'
	from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib/rvg/rvg.rb:264:in `add_outermost_primitives'
	from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib/rvg/rvg.rb:236:in `draw'
	from font_styles.rb:33
^Cpost-setup.rb: font_styles.rb example returned error code 2
/opt/local/bin/ruby -I /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./lib -I /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_ruby_rb-rmagick/work/RMagick-2.9.0/./ext/RMagick quantize-m.rb
Quantizing... Please be patient, this may take a couple of seconds... Done.

まーここで止まってることがわかりましたと.

#19602 (rb-rmagick fails to install ("unable to read font ... n022003l.pfb")) – MacPortsによりますとフォントファイルの場所が変わったらしいっすね.
最後に載ってる感じでリンクはっちゃいます.

# 上のページでは/opt/local/share/fonts/urw-fonts/だったけど,手元ではここやった.おそるべしghostscript
% for i in $(ls /opt/local/share/fonts/libwmf/)
for% do
for% sudo ln -s /opt/local/share/fonts/libwmf/$i /opt/local/share/ghostscript/fonts 
for% done
Password:
% cd /opt/local/share/ghostscript
/opt/local/share/ghostscript% ls
9.00  fonts
/opt/local/share/ghostscript% sudo ln -nsf fonts fontsx
% sudo port install rb-rmagick
--->  Computing dependencies for rb-rmagick
--->  Building rb-rmagick
--->  Staging rb-rmagick into destroot
--->  Installing rb-rmagick @2.9.0_0
--->  Activating rb-rmagick @2.9.0_0
--->  Cleaning rb-rmagick
% 

はい.まるで何事もなかったかのようにインストールできましたね.めでたしめでたし.

もはや何をしようとしてたか思い出せないよ.ママン