2010-12-15 9 views
1

RubyアプリケーションをRubyGem(JewelerとRakeを使用)としてパッケージ化しようとしています。私は宝石がインストールされるターゲットマシン上にビルドする必要があるいくつかのCソースを持っていて、ルビコードがそれを使用できるように出力をgemのbinディレクトリに置きます。私のRubyGemにCファイルを作成

宝石のインストール中にコマンドを実行できるフックはありますか?私のRakefileから

スニペットは次のようになります。

task :install do 
    puts "Install" 
    `touch /tmp/install` 
end 

task :build do 
    puts "Build" 
    `touch /tmp/build` 
end 

私はrake buildを実行すると、それはBuildを出力し、私はrake installを実行すると、出力はInstall続くBuildです。問題は、私がgem installを実行した後にinstallタスクが呼び出されていないときに発生します。

答えて

2

あなたはgemspec拡張子必要があります。基本的には宝石がインストールされている場合、あなたが好きなRubyのコードを実行することができます

http://docs.rubygems.org/read/chapter/20#extensions

を。

+0

素晴らしい!しかし、 'extconf.rb'ファイルが必要で、そのディレクトリに' Makefile'があるはずです。 – arrac

関連する問題