0 Replies
      Latest reply on Apr 4, 2019 6:39 AM by vangelis.ts
      vangelis.ts Level 1 Level 1 (0 points)

        Hello,

         

        I would like to know whether it is possible to develop debugger extensions for Xcode, e.g. add a new button in the Debugger pane and be able to modify program state, even if this means that changes to the underlying toolchain (LLVM / Clang / LLDB) would be required.

         

        The closest reference I was able to find was XcodeKit, but unfortunately it seems limited to source editor extensions.

         

        Thank you very much, in advance!

         

         

        ― Vangelis

        • Re: Xcode Debugger Extensions
          eskimo Apple Staff Apple Staff (11,065 points)

          add a new button in the Debugger pane and be able to modify program state

          The problem here is the GUI.  LLDB has a sophisticated extension architecture, supporting aliases for simple stuff and Python scripting for accomplishing complex tasks.  These work in LLDB from both the command line (via the lldb command) and within Xcode.  However, Xcode does not have any mechanism for loading extensions that tweak its GUI.

          One possibility here is to host that GUI outside of Xcode, in a floating palette say.  The tricky part here is managing the IPC between the GUI and the LLDB extension, although that’s probably doable.

          Share and Enjoy

          Quinn “The Eskimo!”
          Apple Developer Relations, Developer Technical Support, Core OS/Hardware
          let myEmail = "eskimo" + "1" + "@apple.com"

            • Re: Xcode Debugger Extensions
              vangelis.ts Level 1 Level 1 (0 points)

              Thank you very much for the information, eskimo!

               

              Do you have the ability to internally suggest the addition of an API for extensions that modify the GUI of Xcode or should I submit feedback myself?

                • Re: Xcode Debugger Extensions
                  eskimo Apple Staff Apple Staff (11,065 points)

                  should I submit feedback myself?

                  Yes.  I’d appreciate you filing an enhancement request describing what you’re looking for, so that the Xcode team can factor your requirements into their future plans.

                  Please post your bug number, just for the record.

                  Share and Enjoy

                  Quinn “The Eskimo!”
                  Apple Developer Relations, Developer Technical Support, Core OS/Hardware
                  let myEmail = "eskimo" + "1" + "@apple.com"