This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS:启用 C/C++断点(用于 GDB)

Guru**** 1993015 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/613349/ccs-enable-c-c-breakpoint-for-gdb-use

工具/软件:Code Composer Studio

大家好、

我是 CCS 的新用户、我使用它来定位各种拱形。

有时、我在 x86上使用 GCC 构建代码、并使用 GDB 进行调试(单一测试、用于 exemple)。 CCSv6 (Eclipse)是 GDB 的一个良好前端、目前它的工作方式很有魅力。

但是、我不明白为什么在 CCS 编辑器中只能设置 CCS 断点(由 TI 编译器使用、GDB 无法识别)。 :

目前,解决方法很简单:我使用集成的 GDB 控制台来设置断点。

您有什么想法来实现它吗? 这可以是.csproject 指令还是禁用了 CCS 功能?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!
    如果在 GDB 调试会话中、如果开源文件与 CCS 工程无关、CCS 应默认为 Eclipse CDT 断点。 您是如何打开源文件的? 调试期间、调试器是否将其打开?

    谢谢
    Ki
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    感谢你的答复。

    所有源文件似乎都在 CCS 项目中。 我通过 CSS 中的 Project Explorer 打开源文件、在调试的步骤中、GDB 会在执行之后打开文件。

    我不明白的一点是、在我开始调试之前、CCS 编辑器无法添加 C/C++断点。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Etienne Raby 说:
    CCS 项目中似乎包含了所有源文件

    在这种情况下、调试器将假定正在使用 CCS 调试器、并尝试使用 CCS 断点

    [引用 user="Etienne Raby"]我不明白的一点是 CCS 编辑器无法在我开始调试之前添加 C/C++断点。

    它可以。 问题是调试器 CCS 假定将使用什么。 如果源文件位于 CCS 工程中、则假设将使用 CCS 调试器、并且需要 CCS 断点。 如果源文件是标准 Eclipse C makefile 工程的一部分、则假定将使用 GDB 并尝试设置备用 Eclipse C/C++断点。 所有这些都是在调试会话开始之前完成的。

    谢谢

    Ki

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用用户="Ki-Soo Lee "]

    它可以。 问题是调试器 CCS 假定将使用什么。 如果源文件位于 CCS 工程中、则假设将使用 CCS 调试器、并且需要 CCS 断点。 如果源文件是标准 Eclipse C makefile 工程的一部分、则假定将使用 GDB 并尝试设置备用 Eclipse C/C++断点。 所有这些都是在调试会话开始之前完成的。

    [/报价]

    这是有道理的,但它是如此的悲伤... 因此、将各种编译器与 CCS 结合使用的唯一方法是维护两个不同的项目文件?

    没有权变措施来禁用此"功能"并让我选择我的断点类型?

    总之、感谢您的回答。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Etienne Raby 说:
    禁用此"功能"并让我选择我的断点类型没有变通办法?

    您可以为标准 C makefile 工程进行选择。 但不适用于 CCS 项目。

    这一切的行为方式都是由于客户事先反馈造成的。 在过去、我们支持设置断点的功能、无论使用的是调试器还是项目。 但出现了一个问题、即使用 CCS 调试器的客户会意外尝试使用标准 Eclipse CDT 断点、然后抱怨断点不适用于 CCS 调试器。 我们尝试通过将措辞更改为更明确并将 CCS 断点设为默认值来使其更清晰。 但人们仍然被越过了。 由于绝大多数客户使用 CCS 工程进行 CCS 调试、因此我们决定仅为这些情况下的 CCS 断点提供选项。 现在、我们有一些客户在 CCS 调试器中使用(非 CCS)基于 C makefile 的标准工程。 因此、我们提供了切换选项的选项、以使用非 CCS 工程使用 CCS 断点。 但我们看不到太多的客户采用另一种方式(使用 GDB 的 CCS 项目)。

    希望这可以清除问题

    谢谢

    Ki

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    好的。

    感谢你的帮助。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我认为这个 xkcd 在这里是合适的:

    https://xkcd.com/1172/

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    哈哈。 旁路故障控制键的好主意、是这样吗?

    尽管如此、当我尝试在 IDE 中使用其他编译器时、我并不觉得我是个傻瓜。QT Creator、Visual Studio、Eclipse 和其他所有编译器都允许这样做、而不会出现任何问题。 但我理解 CCS 选择:论坛上有很多人想了解为何其 GDB 断点不会停止 TI 调试器。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我并不是要暗示您是在要求任何愚蠢的东西、而是指开发人员随时进行更改-无论出于什么原因-某些用户都依赖于其工作流程中的先前功能。 他们无法获胜。 Microsoft 甚至无法淘汰 Paint!