Is there any interactive or more user-friendly version of GDB for debugging?












8














Is there any interactive or more user-friendly version (or substitution) of GDB for debugging?



Some people suggested CGDB, but after a few tests I found it buggy and unstable.










share|improve this question





























    8














    Is there any interactive or more user-friendly version (or substitution) of GDB for debugging?



    Some people suggested CGDB, but after a few tests I found it buggy and unstable.










    share|improve this question



























      8












      8








      8


      1





      Is there any interactive or more user-friendly version (or substitution) of GDB for debugging?



      Some people suggested CGDB, but after a few tests I found it buggy and unstable.










      share|improve this question















      Is there any interactive or more user-friendly version (or substitution) of GDB for debugging?



      Some people suggested CGDB, but after a few tests I found it buggy and unstable.







      debugging






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited May 5 '11 at 6:29









      Rinzwind

      203k28388522




      203k28388522










      asked May 5 '11 at 5:49









      xzhu

      20726




      20726






















          4 Answers
          4






          active

          oldest

          votes


















          8














          There are multiple graphical frontends for gdb. GNU DDD and KGDB to mention a couple.



          GNU DDD:
          enter image description here



          KGDB:
          enter image description here



          Update: I failed to mention that gdb actually has a built in text-based user interface if you run it with gdb -tui:
          enter image description here






          share|improve this answer































            1














            There's a list of gdb frontends at http://sourceware.org/gdb/wiki/GDB%20Front%20Ends



            This unfortunately gives only further links, but no hints about scope and usability which varies a lot there. I'd recommend to use a frontend that is in active development as gdb itself changes a lot.






            share|improve this answer





























              0














              GDB Dashboard



              https://github.com/cyrus-and/gdb-dashboard



              GDB dashboard uses the GDB Python API and prints the information that you want when GDB stops e.g. after a next, like the native display command.



              Vs TUI:





              • more robust, as it does not put the shell on a more magic curses state, e.g.:





                • vi mode in .inputrc causes problems: https://superuser.com/questions/180512/how-to-turn-off-gdb-tui/927728#927728

                • program stdout / stderr breaks your interface: https://stackoverflow.com/questions/26291629/gdb-in-tui-mode-how-to-deal-with-stderrs-interaction-with-the-ui




              • highly configurable from Python: you can select what you want to output and how big each section is depending on what you are debugging.



                The most useful views are already implemented: source, assembly, registers, stack, memory, threads, expressions... but it should be easy to extend it with any information that is exposed on the GDB Python API.



                TUI only allows showing two of source, assembly and registers and that is it. Unless you want to modify it's C source code of course ;-)






              I believe that GDB should ship with a setup like that out of the box and turned on by default, it would attract much more users that way.



              See also: https://stackoverflow.com/questions/209534/how-to-highlight-and-color-gdb-output-during-interactive-debugging/17341335#17341335






              share|improve this answer































                -1














                You can try UltraGDB, it is a GDB GUI frontend and lightweight IDE based on Eclipse technology.






                share|improve this answer





















                • Just checked their github repo; has not been updated since June 2015. Doesn't seem very trust-worthy.
                  – Al.G.
                  Apr 9 '17 at 8:43











                Your Answer








                StackExchange.ready(function() {
                var channelOptions = {
                tags: "".split(" "),
                id: "89"
                };
                initTagRenderer("".split(" "), "".split(" "), channelOptions);

                StackExchange.using("externalEditor", function() {
                // Have to fire editor after snippets, if snippets enabled
                if (StackExchange.settings.snippets.snippetsEnabled) {
                StackExchange.using("snippets", function() {
                createEditor();
                });
                }
                else {
                createEditor();
                }
                });

                function createEditor() {
                StackExchange.prepareEditor({
                heartbeatType: 'answer',
                autoActivateHeartbeat: false,
                convertImagesToLinks: true,
                noModals: true,
                showLowRepImageUploadWarning: true,
                reputationToPostImages: 10,
                bindNavPrevention: true,
                postfix: "",
                imageUploader: {
                brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
                contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
                allowUrls: true
                },
                onDemand: true,
                discardSelector: ".discard-answer"
                ,immediatelyShowMarkdownHelp:true
                });


                }
                });














                draft saved

                draft discarded


















                StackExchange.ready(
                function () {
                StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f40241%2fis-there-any-interactive-or-more-user-friendly-version-of-gdb-for-debugging%23new-answer', 'question_page');
                }
                );

                Post as a guest















                Required, but never shown

























                4 Answers
                4






                active

                oldest

                votes








                4 Answers
                4






                active

                oldest

                votes









                active

                oldest

                votes






                active

                oldest

                votes









                8














                There are multiple graphical frontends for gdb. GNU DDD and KGDB to mention a couple.



                GNU DDD:
                enter image description here



                KGDB:
                enter image description here



                Update: I failed to mention that gdb actually has a built in text-based user interface if you run it with gdb -tui:
                enter image description here






                share|improve this answer




























                  8














                  There are multiple graphical frontends for gdb. GNU DDD and KGDB to mention a couple.



                  GNU DDD:
                  enter image description here



                  KGDB:
                  enter image description here



                  Update: I failed to mention that gdb actually has a built in text-based user interface if you run it with gdb -tui:
                  enter image description here






                  share|improve this answer


























                    8












                    8








                    8






                    There are multiple graphical frontends for gdb. GNU DDD and KGDB to mention a couple.



                    GNU DDD:
                    enter image description here



                    KGDB:
                    enter image description here



                    Update: I failed to mention that gdb actually has a built in text-based user interface if you run it with gdb -tui:
                    enter image description here






                    share|improve this answer














                    There are multiple graphical frontends for gdb. GNU DDD and KGDB to mention a couple.



                    GNU DDD:
                    enter image description here



                    KGDB:
                    enter image description here



                    Update: I failed to mention that gdb actually has a built in text-based user interface if you run it with gdb -tui:
                    enter image description here







                    share|improve this answer














                    share|improve this answer



                    share|improve this answer








                    edited May 5 '11 at 10:23

























                    answered May 5 '11 at 6:31









                    Egil

                    10.5k23346




                    10.5k23346

























                        1














                        There's a list of gdb frontends at http://sourceware.org/gdb/wiki/GDB%20Front%20Ends



                        This unfortunately gives only further links, but no hints about scope and usability which varies a lot there. I'd recommend to use a frontend that is in active development as gdb itself changes a lot.






                        share|improve this answer


























                          1














                          There's a list of gdb frontends at http://sourceware.org/gdb/wiki/GDB%20Front%20Ends



                          This unfortunately gives only further links, but no hints about scope and usability which varies a lot there. I'd recommend to use a frontend that is in active development as gdb itself changes a lot.






                          share|improve this answer
























                            1












                            1








                            1






                            There's a list of gdb frontends at http://sourceware.org/gdb/wiki/GDB%20Front%20Ends



                            This unfortunately gives only further links, but no hints about scope and usability which varies a lot there. I'd recommend to use a frontend that is in active development as gdb itself changes a lot.






                            share|improve this answer












                            There's a list of gdb frontends at http://sourceware.org/gdb/wiki/GDB%20Front%20Ends



                            This unfortunately gives only further links, but no hints about scope and usability which varies a lot there. I'd recommend to use a frontend that is in active development as gdb itself changes a lot.







                            share|improve this answer












                            share|improve this answer



                            share|improve this answer










                            answered Oct 30 '11 at 0:50









                            yum

                            111




                            111























                                0














                                GDB Dashboard



                                https://github.com/cyrus-and/gdb-dashboard



                                GDB dashboard uses the GDB Python API and prints the information that you want when GDB stops e.g. after a next, like the native display command.



                                Vs TUI:





                                • more robust, as it does not put the shell on a more magic curses state, e.g.:





                                  • vi mode in .inputrc causes problems: https://superuser.com/questions/180512/how-to-turn-off-gdb-tui/927728#927728

                                  • program stdout / stderr breaks your interface: https://stackoverflow.com/questions/26291629/gdb-in-tui-mode-how-to-deal-with-stderrs-interaction-with-the-ui




                                • highly configurable from Python: you can select what you want to output and how big each section is depending on what you are debugging.



                                  The most useful views are already implemented: source, assembly, registers, stack, memory, threads, expressions... but it should be easy to extend it with any information that is exposed on the GDB Python API.



                                  TUI only allows showing two of source, assembly and registers and that is it. Unless you want to modify it's C source code of course ;-)






                                I believe that GDB should ship with a setup like that out of the box and turned on by default, it would attract much more users that way.



                                See also: https://stackoverflow.com/questions/209534/how-to-highlight-and-color-gdb-output-during-interactive-debugging/17341335#17341335






                                share|improve this answer




























                                  0














                                  GDB Dashboard



                                  https://github.com/cyrus-and/gdb-dashboard



                                  GDB dashboard uses the GDB Python API and prints the information that you want when GDB stops e.g. after a next, like the native display command.



                                  Vs TUI:





                                  • more robust, as it does not put the shell on a more magic curses state, e.g.:





                                    • vi mode in .inputrc causes problems: https://superuser.com/questions/180512/how-to-turn-off-gdb-tui/927728#927728

                                    • program stdout / stderr breaks your interface: https://stackoverflow.com/questions/26291629/gdb-in-tui-mode-how-to-deal-with-stderrs-interaction-with-the-ui




                                  • highly configurable from Python: you can select what you want to output and how big each section is depending on what you are debugging.



                                    The most useful views are already implemented: source, assembly, registers, stack, memory, threads, expressions... but it should be easy to extend it with any information that is exposed on the GDB Python API.



                                    TUI only allows showing two of source, assembly and registers and that is it. Unless you want to modify it's C source code of course ;-)






                                  I believe that GDB should ship with a setup like that out of the box and turned on by default, it would attract much more users that way.



                                  See also: https://stackoverflow.com/questions/209534/how-to-highlight-and-color-gdb-output-during-interactive-debugging/17341335#17341335






                                  share|improve this answer


























                                    0












                                    0








                                    0






                                    GDB Dashboard



                                    https://github.com/cyrus-and/gdb-dashboard



                                    GDB dashboard uses the GDB Python API and prints the information that you want when GDB stops e.g. after a next, like the native display command.



                                    Vs TUI:





                                    • more robust, as it does not put the shell on a more magic curses state, e.g.:





                                      • vi mode in .inputrc causes problems: https://superuser.com/questions/180512/how-to-turn-off-gdb-tui/927728#927728

                                      • program stdout / stderr breaks your interface: https://stackoverflow.com/questions/26291629/gdb-in-tui-mode-how-to-deal-with-stderrs-interaction-with-the-ui




                                    • highly configurable from Python: you can select what you want to output and how big each section is depending on what you are debugging.



                                      The most useful views are already implemented: source, assembly, registers, stack, memory, threads, expressions... but it should be easy to extend it with any information that is exposed on the GDB Python API.



                                      TUI only allows showing two of source, assembly and registers and that is it. Unless you want to modify it's C source code of course ;-)






                                    I believe that GDB should ship with a setup like that out of the box and turned on by default, it would attract much more users that way.



                                    See also: https://stackoverflow.com/questions/209534/how-to-highlight-and-color-gdb-output-during-interactive-debugging/17341335#17341335






                                    share|improve this answer














                                    GDB Dashboard



                                    https://github.com/cyrus-and/gdb-dashboard



                                    GDB dashboard uses the GDB Python API and prints the information that you want when GDB stops e.g. after a next, like the native display command.



                                    Vs TUI:





                                    • more robust, as it does not put the shell on a more magic curses state, e.g.:





                                      • vi mode in .inputrc causes problems: https://superuser.com/questions/180512/how-to-turn-off-gdb-tui/927728#927728

                                      • program stdout / stderr breaks your interface: https://stackoverflow.com/questions/26291629/gdb-in-tui-mode-how-to-deal-with-stderrs-interaction-with-the-ui




                                    • highly configurable from Python: you can select what you want to output and how big each section is depending on what you are debugging.



                                      The most useful views are already implemented: source, assembly, registers, stack, memory, threads, expressions... but it should be easy to extend it with any information that is exposed on the GDB Python API.



                                      TUI only allows showing two of source, assembly and registers and that is it. Unless you want to modify it's C source code of course ;-)






                                    I believe that GDB should ship with a setup like that out of the box and turned on by default, it would attract much more users that way.



                                    See also: https://stackoverflow.com/questions/209534/how-to-highlight-and-color-gdb-output-during-interactive-debugging/17341335#17341335







                                    share|improve this answer














                                    share|improve this answer



                                    share|improve this answer








                                    edited Dec 8 at 21:24

























                                    answered Jul 12 at 9:21









                                    Ciro Santilli 新疆改造中心 六四事件 法轮功

                                    9,13444346




                                    9,13444346























                                        -1














                                        You can try UltraGDB, it is a GDB GUI frontend and lightweight IDE based on Eclipse technology.






                                        share|improve this answer





















                                        • Just checked their github repo; has not been updated since June 2015. Doesn't seem very trust-worthy.
                                          – Al.G.
                                          Apr 9 '17 at 8:43
















                                        -1














                                        You can try UltraGDB, it is a GDB GUI frontend and lightweight IDE based on Eclipse technology.






                                        share|improve this answer





















                                        • Just checked their github repo; has not been updated since June 2015. Doesn't seem very trust-worthy.
                                          – Al.G.
                                          Apr 9 '17 at 8:43














                                        -1












                                        -1








                                        -1






                                        You can try UltraGDB, it is a GDB GUI frontend and lightweight IDE based on Eclipse technology.






                                        share|improve this answer












                                        You can try UltraGDB, it is a GDB GUI frontend and lightweight IDE based on Eclipse technology.







                                        share|improve this answer












                                        share|improve this answer



                                        share|improve this answer










                                        answered Jun 12 '15 at 0:33









                                        Xiao Ming

                                        1




                                        1












                                        • Just checked their github repo; has not been updated since June 2015. Doesn't seem very trust-worthy.
                                          – Al.G.
                                          Apr 9 '17 at 8:43


















                                        • Just checked their github repo; has not been updated since June 2015. Doesn't seem very trust-worthy.
                                          – Al.G.
                                          Apr 9 '17 at 8:43
















                                        Just checked their github repo; has not been updated since June 2015. Doesn't seem very trust-worthy.
                                        – Al.G.
                                        Apr 9 '17 at 8:43




                                        Just checked their github repo; has not been updated since June 2015. Doesn't seem very trust-worthy.
                                        – Al.G.
                                        Apr 9 '17 at 8:43


















                                        draft saved

                                        draft discarded




















































                                        Thanks for contributing an answer to Ask Ubuntu!


                                        • Please be sure to answer the question. Provide details and share your research!

                                        But avoid



                                        • Asking for help, clarification, or responding to other answers.

                                        • Making statements based on opinion; back them up with references or personal experience.


                                        To learn more, see our tips on writing great answers.





                                        Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                                        Please pay close attention to the following guidance:


                                        • Please be sure to answer the question. Provide details and share your research!

                                        But avoid



                                        • Asking for help, clarification, or responding to other answers.

                                        • Making statements based on opinion; back them up with references or personal experience.


                                        To learn more, see our tips on writing great answers.




                                        draft saved


                                        draft discarded














                                        StackExchange.ready(
                                        function () {
                                        StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f40241%2fis-there-any-interactive-or-more-user-friendly-version-of-gdb-for-debugging%23new-answer', 'question_page');
                                        }
                                        );

                                        Post as a guest















                                        Required, but never shown





















































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown

































                                        Required, but never shown














                                        Required, but never shown












                                        Required, but never shown







                                        Required, but never shown







                                        Popular posts from this blog

                                        Quarter-circle Tiles

                                        build a pushdown automaton that recognizes the reverse language of a given pushdown automaton?

                                        Mont Emei