c/c++语言开发共享如何使用gdbserver设置Eclipse进行远程C调试?

我是Eclipse的新手。 尝试设置进行远程调试。

这是情况,我连接到运行Linux的远程机器,我正在运行Windows。

1)我已经为Eclipse安装了所有必需的工具,并且能够连接到Linux机器。

2)远程机器有gdbserver

 linux1[1]% gdbserver Usage: gdbserver [OPTIONS] COMM PROG [ARGS ...] gdbserver [OPTIONS] --attach COMM PID gdbserver [OPTIONS] --multi COMM COMM may either be a tty device (for serial debugging), or HOST:PORT to listen for a TCP connection. Options: --debug Enable debugging output. 

我需要在gdbserver配置任何东西???

3)我还应该在Eclipse中配置什么? 用于远程调试?

4)我的GDB版本与远程机器GDB有什么不同?

    gdbserver需要更多参数。 例如,假设gdbserver localhost:1337 yourprogram yourprogramarguments并保持运行。

    然后,在Eclipse中,为“C / C ++应用程序”创建新的调试配置。 在主选项卡的底部,选择GDB (GSF) Remote System Process Launcher作为启动器。 在调试器选项卡上,选择gdbserver Debugger作为调试器。 在连接下,将TCP称为连接类型,并将localhost:1337作为地址。 启动配置时,您可以通过在控制台中输入命令来控制远程gdb

    CLI健全性检查

    在您做任何事之前,请确保:

    这个答案假设你可以在开发板上做:

     sudo apt-get install gdbserver gdbserver :1234 path/to/executable 

    在主持人:

     aarch64-linux-gnu-gdb  -ex "target remote board-hostname:1234"  -ex "file path/to/cross/compiled/executable"  -ex 'tb main'  -ex c 

    然后正确调试一切。

    Eclipse设置

    在Ubuntu 16.04主机上测试,Eclipse Oxygen 4.7.0(从网站下载), gdbserver 7.12, aarch64-linux-gnu-gdb 7.6。

    我已成功使用以下所有方法:

    手册

    使用此方法,我们必须在Eclipse上运行debug之前在目标上启动gdbserver

    Pro:通过Eclipse配置SSH连接以允许Eclipse运行gdbserver ,这是另一个可能的失败点。

    Con:每次调试开始时都必须重新启动gdbserver 。 如果Eclipse理解gdbserver --multi ,这可以克服,但我认为不行吗?

    由于其简单,我建议您首先使用此方法。

    打开调试配置,然后创建一个新的“C / C ++远程应用程序”。

    在“主要”选项卡下:

    在“调试器”选项卡下:

    最后,像在CLI中一样,在目标上手动启动gdbserver

     gdbserver :1234 path/to/executable 

    并正常从Eclipse启动调试器。

    每次终止程序时都必须重新启动gdbserver

    自动使用密码validation

    这是开发板的最佳方法,它具有固定的公开密码。

    它用SSH和密码连接目标,每次都自动在目标上启动gdbserver ,非常方便!

    目标gdbserver stdout进入Eclipse“Console”窗口,这进一步减少了窗口切换。

    在Eclipse集中:

    使用公钥自动

    与密码validation非常相似,但您必须转到:“连接”,“新建”,然后选择“基于公钥的validation”

    优点:

    缺点:

    所以我更喜欢这种方法用于服务器。

    如果您以下情况,SSH可以在没有密码的情

    在使用此方法之前,请确保您的授权密钥在命令行中运行,即您现在应该能够:

     ssh user@host 

    没有输入任何密码。

      以上就是c/c++开发分享如何使用gdbserver设置Eclipse进行远程C调试?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/560797.html

      (0)
      上一篇 2021年1月28日
      下一篇 2021年1月28日

      精彩推荐