gcc错误消息存储库

时间:2010-12-16 18:00:31

标签: c++ c visual-c++ gcc

我花了很多时间使用Microsoft编译器cl,发现它在编译消息中提供的错误代码(如C1234,C5432等)非常有用。当我收到一个我不熟悉的错误时,我可以在MSDN上轻松查找并获得更详细的解释。

现在我几乎完全使用gcc,我发现我错过了这个功能。当我在gcc中遇到一些错误时,我似乎花了很多时间在Google上搜索有关它的信息的错误文本。是否有一些gcc错误消息存储库,其中每一个都有更详细的解释?

2 个答案:

答案 0 :(得分:4)

我不知道任何完整的存储库,包括完整的解释,但对我自己来说:

  • 随着时间的推移,您将了解特定错误消息的含义(尤其是“您错过了;但编译器无法告诉”。
  • 在引号(不包括函数名称)中搜索错误消息的常量部分通常会在前3-5次点击中给出非常好的解释。
  • 与模板相关的错误通常是最糟糕的。对于那些,编译器为您提供两个行号:模板代码所在的位置,以及它被实例化的位置。在上下文中查看这两行代码通常可以使事情更加清晰(“为什么它使用THAT重载?”)。有时最简单的方法是使用更简单的类型创建一个测试程序,以计算出编译器告诉你的内容(因为它不足以在错误消息中显示typedef)。
  • 如果它是一小段代码,请在不同的编译器中尝试(例如Comeau online)并查看错误是否更清楚。

答案 1 :(得分:0)

我发现谷歌搜索确切的错误信息(省略改变的事情,如变量/函数名称)给出了相当不错的结果。有时有助于将错误消息的全部或部分括在引号中,以便将其视为句子而不是单词集合。

This page解释了一些更基本的错误消息。

如果你遇到一些特别令人费解的事情,你很难搞清楚,你当然可以随时询问。