我正在试验OpenDDS(和ACE / TAO),它使用MPC(Make Project Creator)来生成实际的make文件,而且它正在做一些非常讨厌的事情。
首先,它会生成许多中间源文件(一些IDL和c ++标头/实现),并将它们放在同一目录中,并手动创建IDL和C ++文件。我想将手动创建的文件和生成的文件放在不同的目录中,因为所有生成的文件都会分散注意力。有没有办法做到这一点?
其次,让我运行“make clean”它清理生成的目标文件,但它不会清理生成的源文件。有没有办法让它清理所有生成的文件?
答案 0 :(得分:2)
要删除所有生成的文件(使用make文件时),请执行“make realclean”。 'make clean'简单地清理C ++编译产品(目标文件,库和可执行文件),而'make realclean'删除所有生成的文件。
更改生成文件的输出目录可能不是您真正想要做的事情。是的,大量生成的IDL和C ++确实有时会妨碍你,但过了一段时间你会学会看过去。如果您对此设置为死,则一种间接方式是使用MPC附带的clone_build_tree.pl脚本。此脚本创建一个新目录(在build / xxx下),其中包含指向所有源文件的符号链接。然后在那里进行构建,保留原始源目录。这是一个简化的示例(假设已经设置了ACE,TAO和MPC):