2

是否有返回 bjam 中当前调用的规则?

我知道如果您调用“bjam.exe -d+10 ...”,它会打印出调用堆栈,但您自己的 ECHO 不会。

我打算做的是打印 generators.register 中的调用堆栈generators.jam中的任何其他规则,以找出这个双重注册的位置。

目前我正在注册两个相同的生成器,但我无法找出原因。这最终导致:

错误:搜索最佳转换时发现歧义

...

成功的生成器:

  • xxx.link

  • xxx.link

...

4

1 回答 1

2

可以使用 bjam 的内置BACKTRACE规则来完成。如果原始 BACKTRACE 没有以最适合您的情况的格式提供调用堆栈,您还可以考虑使用 tools/build/v2/kernel/errors.jam 中的一些方便的包装器。

于 2011-05-03T21:09:18.753 回答