у меня есть Rakefile с таким правилом:
rule '.so' => '.cc' do |t|
puts "@ Compiling #{t.source}"
output = t.source.ext("so")
output['stdlib'] = 'build'
sh "mkdir -p #{File.dirname(output)}"
sh "#{CXX} #{t.source} -o#{output} #{STDLIB_CFLAGS} #{STDLIB_LFLAGS}"
end
Как видите, он генерирует множество библиотек .so из каталога 'stdlib' (который содержит исходники) в каталог 'build', где хранятся двоичные файлы.
Теперь проблема в том, что из-за этого «обмена каталогами» rake, похоже, не распознает файлы .so как файлы, которые он сгенерировал, вызывая перекомпиляцию каждого модуля .so каждый раз при запуске команды rake, даже если ничего не изменилось.
Есть ли способ решить эту проблему?
Спасибо