2

当我们在程序中遇到错误时,我们需要能够调试。该程序通过crashrpt生成故障转储。这些转储用于我们程序和所有相关库的 release-with-debug-info 版本。一切都应该通过持续集成服务器构建,然后生成安装程序;但是,我们不能在持续集成服务器以外的任何计算机上使用 crashrpt 的跟踪信息。因此,一个人负责生成构建,而同一个人负责处理任何传入的崩溃报告。如果那个人外出/生病/被公共汽车撞到/等,那么没有其他人可以处理我们用户的崩溃报告。

我们如何在构建环境中的所有计算机之间同步调试信息?目标是拥有一组每个人都可以参考的调试信息,并且每个人都可以使用 Crash Reporter 生成的堆栈跟踪,而不管用于生成构建的计算机是什么。

如果这些信息相关,我们使用 Visual Studio 2008、Windows 7 64 位和 Qt SDK 4.7.4。

4

1 回答 1

1

您可以在 CI 服务器上构建您的软件,而不会出现任何问题。在我这里,我们正是这样做的。

您所要做的就是*.pdb;*.exe;*.dll将编译的工件 ( ) 存档,然后将它们放在您的内部文件服务器上。此档案不应交付给客户。

每当您收到崩溃报告时,请从文件中查找版本信息xml并从文件服务器中选择相应的工件存档。将存档的内容与报告的dmp文件 (1) 放在同一文件夹中,并确保从您的版本控制系统中获取与构建时间相对应的源代码。

(1)您还可以将符号放在您喜欢的任何文件夹中,并将其添加到 Visual Studio 的“工具/选项.../调试/符号”(VS 2008) 中的文件夹列表中。

于 2012-04-03T09:04:25.627 回答