1

我正在尝试将我的 ruby​​ 应用程序打包为 RubyGem(使用 Jeweler 和 Rake)。我需要在要安装 gem 的目标机器上构建一些 C 源代码,然后将输出放在 gem 的 bin 目录中,以便我的 ruby​​ 代码可以使用它。

在 gem 安装期间我可以通过什么钩子来执行命令?

我的 Rakefile 中的一个片段如下所示:

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

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

当我执行rake build它时输出Build,当我执行rake install输出时,Build后面跟着Install. 当我这样做时问题就来了,gem install那么install任务就没有被调用。

4

1 回答 1

2

您需要 gemspec 扩展:

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

基本上你可以在安装 gem 时运行任何你喜欢的 ruby​​ 代码。

于 2010-12-15T15:39:08.343 回答