1

with でネイティブC拡張を書いています。これを、定義した別のタスクに依存させる必要がありますRuby 2.0Rake::ExtensionTask.new('NAME')

task :myTask do |t|
....
end

rake compile私の質問は、 を実行したときに、拡張機能のコンパイル/作成が定義済みのタスク、つまり myTask の完了に依存するように、このセットアップをどのように行うことができるかということです。

次のことも試しましたが、実行時に「コンパイル」オプションが表示されませんrake -T

task :myTask

task :extension_compile => [:myTask]
  Rake::ExtensionTask.new("NAME")
end
4

2 に答える 2

5

既存のタスクに依存関係を追加するには、以前と同じようにハッシュ表記を使用する必要があります。

task :compile => [:myTask]

説明のあるタスクのみが表示されるため、:compile実行時にタスクは表示されません。rake -Trake

desc "This is a compilation task"
task :compile

実行rake -Tすると、次のようになります。

rake compile  # This is a compilation task
于 2013-04-24T23:10:19.210 に答える
1

2 番目のスニペットは正しいように見えます。レーキ リストで表示できるように説明を追加するだけです

desc "Here's your description"
task :extension_compile => [:myTask]
  Rake::ExtensionTask.new("NAME")
end
于 2013-04-24T23:09:58.753 に答える