rmagick を回避した Redmine 1.4 (trunk) のインストール

Redmine の 1.4 対応用に一足早く開発版(trunk:r9244)をインストールしてみました。
このとき、かなりハマったのですが、なんとかインストールできたので、解決方法を書いておきます。 同じポイントで困っているようでしたら、参考にしてみてください。

ハマるポイントは gem の rmagick (2.13.1) のインストールです。 これをインストールするのは相当大変なので、これ抜きで Redmine をインストールしています。
インストールした環境は Windows ですが、回避方法は Linux 等でも使えると思います。

ソースの入手

まず、 Redmine のソースを入手します。 開発版なので、 Subversion からチェックアウトします。

Ruby のインストール

Redmine 1.4 の一番の売りはおそらく Ruby の 1.9 対応でしょう。
私の場合 Ruby は いろいろ一緒にインストールしてくれる rumix を使っていました。 これを 1.9 も使おうと思ったのですが、 1.9 のバージョンで用意されていたパッケージが 1.9.1 とちょっと古く(2012-3-23 時点)、 インストールできませんでした。

そこで、英語ですがこちらもいろいろ一緒にインストールしてくれる RubyInstaller で 1.9.3 をインストールしました。 そのあと、念のため、 gem を最新版にアップデートしています。
gem update --system

必要なパッケージのインストール (ハマる前まで)

Redmine のいつもの手順でインストールします。
最初の rake コマンドを実行するところで、メッセージがでて止まります。
$ rake generate_session_store
Redmine requires Bundler. Please install it with `gem install bundler`.

いわれた通りに bundler パッケージのインストールをすると、これは上手くいきます。
$ gem install bundler

もう一度、 rake コマンドを実行すると今度は別なメッセージがでます。
$ rake generate_session_store
Some gems may need to be installed or updated.
Please run `bundle install --without development test`.

また、いわれた通りにコマンドたたくと、必要な gem パッケージのインストールをダーっとやってくれます。
$ bundle install --without development test
おぉ、便利と思っていたら、 rmagick のところで失敗してしまいました。
Installing rmagick (2.13.1) 
Gem::InstallError: The 'rmagick' native gem requires installed build tools.

Please update your PATH to include build tools or download the DevKit
from 'http://rubyinstaller.org/downloads' and follow the instructions
at 'http://github.com/oneclick/rubyinstaller/wiki/Development-Kit'
An error occured while installing rmagick (2.13.1), and Bundler cannot continue.
Make sure that `gem install rmagick -v '2.13.1'` succeeds before bundling.
ここがハマるポイントです。 メッセージに書かれているように DevKit をインストールしてみても rmagick のところで、 やっぱり失敗します。
DevKit のサイトに書かれている DevKit のテストは上手くいったので、 DevKit のインストール自体は問題なさそうでした。

いろいろ試したけど、上手くいきませんでした。 ググって調べてみると、 rmagick 2.13.1 のインストールは結構みんなハマるみたいです。
で、わかったのは Windows に rmagick 2.13.1 をインストールするのは、すっごく大変ってことだけです。
追記 2012-03-29
教えていただいた方法によると、 次項のようにわざわざコメントアウトしなくても、 省略するパッケージの指定に rmagick を追加すればスキップできました。
$ bundle install --without development test rmagick 
追記 2012-04-18
--without の指定で rmagick をスキップした場合、 rake コマンドを実行するところで、引き続き rmagick のインストールエラーが出力されることがあります。

この場合は、 一旦 OS を再起動するとうまくいくようです。

rmagick のインストールをスキップさせる

前のバージョンではこの rmagick はオプションだったので、 今度は、なんとか rmagick なしでインストールできないか 調べてみました。

Redmine のソースの直下に今までのバージョンにはなかった Gemfile というファイルがあります。
中身を確認してみると、どうやら bundler ではこのファイルに書かれたパッケージを順にインストールしていっているみたいです。

rmagick の部分は次のような記述です。
# Optional gem for exporting the gantt to a PNG file
group :rmagick do
  # RMagick 2 supports ruby 1.9
  # RMagick 1 would be fine for ruby 1.8 but Bundler does not support
  # different requirements for the same gem on different platforms
  gem "rmagick", ">= 2.0.0"
end

やっぱり、オプションみたいです。 ガントチャートを PNG ファイルにエクスポートするのに使うと書かれていますが、 無くても困りません。
この rmagick の部分をコメントアウトします。
# Optional gem for exporting the gantt to a PNG file
#group :rmagick do
  # RMagick 2 supports ruby 1.9
  # RMagick 1 would be fine for ruby 1.8 but Bundler does not support
  # different requirements for the same gem on different platforms
#  gem "rmagick", ">= 2.0.0"
#end
コメントアウトした後、再度 bundle を実行します。
$ bundle install --without development test

rmagick がスキップされて、 今度は止まることなく、 残りの gem パッケージのインストールが行われました。

後は rake generate_session_store から、いつものように インストールをつづけると無事に Redmine のインストールが完了しました。

以前のバージョンの Redmine では、 Rails や Rack など動作に必要な gem パッケージを redmine.org のインストール方法のページで確認しながら インストールする必要があって、面倒でした。 1.4 からは Bundler を使って、自動でできるようになっています。
これ自体は非常に嬉しい改良なのですが、問題はオプションなのにインストールの難しい rmagic まで、 そこに含まれてしまっている点です。
実際の 1.4.0 がリリースされるときにはここが改良されているといいのですが。
関連記事
スポンサーサイト



Prev.    Category    Next 

Facebook コメント


コメント

No title

Gemfileをコメントアウトでなく、"bundle install --without development test rmagick"でいけます。

Re: No title

> Gemfileをコメントアウトでなく、"bundle install --without development test rmagick"でいけます。

情報ありがとうございます。
ブログに追記しました。

No title

情報ありがとうございます、助かりました!

わたしは、追記にあった

bundle install --without development test rmagick

を試しています。
ただ、そのあとも、rakeコマンドを叩いても

Installing rmagick (2.13.1)
Gem::InstallError: The 'rmagick' native gem requires installed build tools.

Please update your PATH to include build tools or download the DevKit
from 'http://rubyinstaller.org/downloads' and follow the instructions
at 'http://github.com/oneclick/rubyinstaller/wiki/Development-Kit'
An error occured while installing rmagick (2.13.1), and Bundler cannot continue.
Make sure that `gem install rmagick -v '2.13.1'` succeeds before bundling.

というメッセージが出てしまいました。

その後、Redmine本家で下記の書き込みをみつけたので、OSを再起動すると、rakeコマンドが通るようになりました。

http://www.redmine.org/boards/2/topics/834

Re: No title

自分もリリースされた 1.4.0 の時は --without を使った方でやってみました。
私の場合はそれだけでうまくいったのですが、うまく動かない場合もあるんですね。

こちらの情報も追記させていただきます。

コメントの投稿

Font & Icon
非公開コメント

このページをシェア
アクセスカウンター
アクセスランキング
[ジャンルランキング]
コンピュータ
31位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
5位
アクセスランキングを見る>>
カレンダー(アーカイブ)
プルダウン 降順 昇順 年別

08月 | 2023年09月 | 10月
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30


はてな新着記事
はてな人気記事
ブロとも申請フォーム
プロフィール

yohshiy

Author:yohshiy
職業プログラマー。
仕事は主に C++ ですが、軽い言語マニアなので、色々使っています。

はてブ:yohshiy のブックマーク
Twitter:@yohshiy

サイト紹介
プログラミング好きのブログです。プログラミング関連の話題や公開ソフトの開発記などを雑多に書いてます。ただ、たまに英語やネット系の話になることも。