按照如何在 Frege 中使用多个内联断言的答案,我学习了如何编译两个 Frege 模块 A 和 B,其中 B 依赖于 A:你必须编译 B。如果给定 -make 选项,编译器会发现 B 依赖于在 A 上,将在源路径(-sp 标志)上找到 A,然后先编译 A,然后编译 B。
但是,我不能只将我关心的所有文件都交给编译器。将 A和B 都提供给编译器失败,对我来说出现“循环依赖”错误。而且我还发现无法为编译器提供目录(它什么也没做)。
看起来我必须知道依赖图的根才能正确编译所有需要编译的文件。但
- 我可能不知道根源。
- 可能有很多。
- 以这种方式进行适当的构建自动化非常困难。
是否有编译器选项的组合,我可以让编译器编译源树中的所有文件?