如何使用Eclipse从Windows调试linux C++程序

How to debug a linux C++ program from Windows with Eclipse?

本文关键字:linux C++ 程序 调试 Windows 何使用 Eclipse      更新时间:2023-10-16

我使用无头(即无屏幕)远程ubuntu服务器x64来开发C++应用程序(也没有UI)。

我想方便地(类似IDE,而不是命令行)从windows(7/64)调试这个程序,如果可能的话,使用Eclipse。我在两台机器上都有一个windows共享和完全的root访问权限。

到目前为止,我已经听说了两种解决方案:

  1. 远程gdb
  2. 远程X服务器

我研究过解决方案1:构建一个跨gdb,在windows上复制我的程序和libs。我可以从cygwin命令行远程gdb,但不能从eclipse远程gdb(停留在"启动…85%",没有错误消息也没有日志)

我还研究过解决方案2:安装xauth,设置X转发,在我的windows上安装xming,在linux盒子上设置DISPLAY。但没有效果"无法打开DISPLAY xxx",没有简单的故障排除。

在谷歌上搜索这些问题时,我只会发现过时的页面或不同的问题。

有人做过吗?你能分享关于如何从Windows远程调试C++linux应用程序的建议或新建议吗?

我建议在Windows机器上安装X11服务器(例如Xming?),并在Linux服务器上使用一些X11客户端应用程序(如emacsddd(如果需要)、xterm)执行ssh -X。不要使用像Eclipse这样复杂的东西。您可以只使用emacs(在Linux服务器上远程显示,在Windows桌面X11服务器上显示)。。。

一旦emacs运行良好(在远程Linux服务器上运行,在Windows桌面X11服务器上显示),就可以在其中运行gdb

要使ssh -X工作,您需要对其进行适当的配置。也许你忘了那一步。要测试它,只需使用ssh -X yourlinuxhost xterm,然后进行配置,直到该步骤起作用。

当然,你也可以在你的笔记本电脑或台式机上安装Linux,也许是在Windows之上的虚拟机内。

注:。我从未使用过Windows,但我知道有些X11服务器是为它而存在的。

有一个eclipse插件RSE(远程系统资源管理器),它可以做你所期望的事情。代码库可以在linux服务器中,eclipses使用telnet/ssh登录。在服务器上可以再次执行,本地gdb用于调试。

您可以为Eclipse使用以下简单插件。

http://marketplace.eclipse.org/content/direct-remote-c-debugging

它只需要ssh连接到服务器,它关心其他任何事情