This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

I have a targeted build that is not allowing breakpoints

I have a targeted build that is not allowing breakpoints, but instead provides a white circle with a "?" overlaying it.  Selected breakpoint is useless.  right clicking on the "?" provides no answers.

Parents
  • Hi Edmund

    My name is Stephen and I work at Arm.

    The breakpoint with a white circle and a question mark means that you've tried to place a breakpoint at an address or on a line of code in a file, but the debugger has no debug information for that address/file.

    This is easily done accidentally if you have several projects open in your workspace, and you set a breakpoint e.g. on main() in main.c of the wrong project.

    In the screenshot below, the debugger is connected to a target using project1.axf.  I intended to set a breakpoint on main() for project1, but "accidentally" set it on main() for project2 instead.

    The Commands view reports: "No compilation unit matching main.c was found"

    In this case, the debugger actually sets a "pending breakpoint".  This can also happen during normal operation, e.g. where you want to set a breakpoint on a shared library in e.g. a Linux system, but the shared library has not yet been loaded by the kernel.  When the kernel eventually loads the library, the debugger will then load the debug information for the library and activate the breakpoint.

    To try to resolve your issue, as a starting point I suggest you disconnect from the target, close all the open editor views on source files, delete all breakpoints, then reconnect afresh.

    Hope this helps

    Stephen

Reply
  • Hi Edmund

    My name is Stephen and I work at Arm.

    The breakpoint with a white circle and a question mark means that you've tried to place a breakpoint at an address or on a line of code in a file, but the debugger has no debug information for that address/file.

    This is easily done accidentally if you have several projects open in your workspace, and you set a breakpoint e.g. on main() in main.c of the wrong project.

    In the screenshot below, the debugger is connected to a target using project1.axf.  I intended to set a breakpoint on main() for project1, but "accidentally" set it on main() for project2 instead.

    The Commands view reports: "No compilation unit matching main.c was found"

    In this case, the debugger actually sets a "pending breakpoint".  This can also happen during normal operation, e.g. where you want to set a breakpoint on a shared library in e.g. a Linux system, but the shared library has not yet been loaded by the kernel.  When the kernel eventually loads the library, the debugger will then load the debug information for the library and activate the breakpoint.

    To try to resolve your issue, as a starting point I suggest you disconnect from the target, close all the open editor views on source files, delete all breakpoints, then reconnect afresh.

    Hope this helps

    Stephen

Children