1
小さなC++プロジェクトでMakefileをRakefileに変換しています。私は* .hと* .cppのファイルとobj dirを持つsrcディレクトリを持っています。すべての* .oはそこにあります(私はそれらをsrcに入れたくありません)。レイクルールでそれを行うには?C++プロジェクトでのRakefileルール
これは問題なく動作しますが、一般的なルールが必要です。
rule("#{OBJ_DIR}hello.o" => "#{SRC_DIR}hello.cpp") do |target|
これは "依存ルールを処理する方法を知ってはいけない:/src\/(\w+).cpp/" 返しhere
rule '.o' => '.cpp' do |target|
sh "#{COMPILER} #{FLAGS} -c -o #{target.name} #{target.source}"
end
から臆面もなくコピーされ
rule(/obj\/(\w+).o/ => /src\/(\w+).cpp/) do |target|
sh "#{COMPILER} #{FLAGS} -c -o #{target.name} #{target.source}"
end
あなたが提示したようなルールがありますが、それはうまくいきますが、別のディレクトリにファイルをコピーしないでください。 – Nazgob
あなたが添付したリンクが私の質問に答えました。 – Nazgob