2015-05-05 100 views
2

我刚刚得到一个简单的“Hello,World!” C程序在Eclipse CDT plugin中构建和编译。当你去创建一个新的C工程,或者当你去为现有的C工程设置一个运行配置时,Eclipse允许你指定一个调试模式或者发布模式。Eclipse CDT和调试/发布模式

我在想这两种模式之间有什么不同。显然,调试模式是某种开发模式,可能不会优化事情,并且需要更长的时间来构建/运行。但是对于C来说,新手很难理解Debug vs Release的配置/参数。令人震惊的是,CDT文档没有提及任何调试与发布模式!

有人可以给我的东西,可能是调试模式配置的具体的使用情况,但不包括在释放模式?反之亦然,这些东西会包含在发布模式中,但在调试模式中排除?

回答

6

通常,在调试版本中将附加标志-g传递给gcc。它告诉gcc将调试信息包含到程序中。调试不带此标志的程序是不可能的。

另一个调试标志是-O0,它禁用了优化。当您逐步执行优化的程序时,它通常会跳转到意想不到的代码行,这使得调试变得更加困难。

+0

感谢@basin(+1) - 如何准确配置在每种模式下设置的标志?如何知道Eclipse的运行配置设置的标志?再次感谢! – smeeb

+0

@smeeb我认为他们在项目属性中设置,而不是运行配置 – basin