スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

rvm 経由でいれた Ruby1.9.2 における Netbeans での Rmagick 不具合

rvmでRuby1.9.2の環境をいれたので、netbeansでプロジェクトを動かしてみる。

まずnetbeansにRuby1.9.2を認識させる。

netbeansのメニューバーの[ツール]→[Rubyプラットフォーム]を開き、
Rubyプラットフォームマネージャーを立ち上げる。
そして、[プラットフォームを自動検出]をクリックすると、rvmでいれたRuby1.9.2-p0が認識された。

とりあえず一安心。そして何も考えずプロジェクトを実行してみるが、エラー発生。
Could not find rmagick-2.13.1 in any of the sources
Try running `bundle install`.

rmagickが見つからないということらしい。ruby1.9.2をいれた際、一応gemでは事前にインストールしてあるはずなのだがなぜだろう。。。

確認のためnetbeansのメニューバーの[ツール]→[Ruby Gems]を開き、
インストールされているgemのリストを確認する。
が・・・rmagickがリストにない;;おかしいな。

初心に返って、ターミナルからコマンドで確認してみる。
$ gem list

*** LOCAL GEMS ***
/** 省略 **/
rmagick (2.13.1)
/** 省略 **/

あるじゃん!てことはプログラムも実行できるはずだなー。やってみる。
$ cd ~/NetBeansProjects/test
$ rails s
=> Booting WEBrick
=> Rails 3.0.0 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2010-10-26 00:37:34] INFO WEBrick 1.3.1
[2010-10-26 00:37:34] INFO ruby 1.9.2 (2010-08-18) [x86_64-darwin10.4.0]
[2010-10-26 00:37:34] INFO WEBrick::HTTPServer#start: pid=7687 port=3000

うむ、大丈夫そうだ。

netbeansに戻り、もう一度環境を確認する。
Rubyプラットフォームマネージャーでのgem環境とコマンド実行時の環境の違いを見てみる。
コマンド上での環境を調べる為以下を実行。
$ gem env

なるほど!どうやらnetbeansのgemパスがおかしいみたい↓↓
/Users/yas/.gem/ruby/1.9.1
/Users/yas/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/gems/1.9.1

上記コマンドで調べたパスをnetbeans側に手動で設定。
/Users/yas/.rvm/gems/ruby-1.9.2-p0
/Users/yas/.rvm/gems/ruby-1.9.2-p0@global


これでいけるかnetbeans上でプロジェクト実行してみる。
Could not find rmagick-2.13.1 in any of the sources
Try running `bundle install`.

やっぱりダメ。素直に言われた通りbundle installしてみる。
プロジェクトを右クリックして[Bundler]→[install]を実行。
Installing rmagick (2.13.1) with native extensions /Users/yas/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/rubygems/installer.rb:483:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)

/Users/yas/.rvm/rubies/ruby-1.9.2-p0/bin/ruby extconf.rb
checking for Ruby version >= 1.8.5... yes
checking for gcc... yes
checking for Magick-config... no
Can't install RMagick 2.13.1. Can't find Magick-config in /usr/bin:/bin:/usr/sbin:/sbin

*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
/** 省略 **/

失敗。エラーの内容をみると以下の部分があやしそう。
checking for Magick-config... no
Can't install RMagick 2.13.1. Can't find Magick-config in /usr/bin:/bin:/usr/sbin:/sbin

Magick-configが見つからないらしい。調べてみるとこれはImageMagick関連のファイルっぽい。

ImageMagickはMacportsでインストールしたため/opt以下に存在しているが、ここでは探しにいけてないみたい。Macportsインストール時にした環境変数の設定をnetbeans立ち上げ時にもしないとダメみたいだなー。

いろいろ調べてみるとnetbeans.confというファイルに設定するといいらしいので、
$ cd /Applications/NetBeans/NetBeans\ 6.9.1.app/Contents/Resources/NetBeans/etc
$ emacs netbeans.conf

で以下の環境変数の設定を追加する。
export PATH=/opt/local/bin:/opt/local/sbin/:$PATH
export MANPATH=/opt/local/man:$MANPATH


さて、三度目の正直なるか!
プロジェクトを右クリックして[Bundler]→[install]を実行。
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.

よっし、rmagickインストール成功!!

さらにプロジェクトを起動してみるとちゃんと動作した。
かなり苦戦したなぁー。。。まだまだ精進せねばっ!

Netbeans Platform 6.9 Developer's Guide

新品価格
¥3,549から
(2010/10/26 02:16時点)


コメントの投稿

非公開コメント

検索フォーム
プロフィール

Author:yas
yasと申します。
RailsにてWebアプリケーション開発をしております。

【開発環境】
OS: Mac OSX 10.6
Ruby: 1.9
Rails: 3.0
IDE: NetBeans6.9

最新記事
カテゴリ
月別アーカイブ
RSSリンクの表示
リンク
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。