首页 文章

通过SSH使用Eclipse处理远程项目

提问于
浏览
180

我有以下方框:

  • 带有Eclipse CDT的Windows框,

  • 一个Linux机器,只能通过SSH访问我 .

构建和运行我的项目所需的编译器和硬件都只在机器B上 .

我想使用Eclipse CDT从该项目的Windows框中“透明地”工作,并能够在IDE中远程构建,运行和调试项目 .

我如何设置:

  • 大楼会起作用吗?任何比编写本地makefile更简单的解决方案,然后调用远程makefile来启动实际构建? Eclipse托管构建是否具有此功能?

  • 调试会有效吗?

  • 最好 - Eclipse CDT代码索引可以工作吗?我是否必须将所有必需的头文件从机器B复制到机器A并将它们手动添加到包含路径?

7 回答

  • 1

    试试Remote System Explorer(RSE) . 这是一组完全符合您要求的插件 .

    RSE可能已包含在您当前的Eclipse安装中 . 要检入Eclipse Indigo,请转到 Window > Open Perspective > Other... 并从Open Perspective对话框中选择 Remote System Explorer 以打开RSE透视图 .

    要从Eclipse中的RSE透视图创建SSH远程项目:

    • 定义新连接,并从“新建连接”对话框的“选择远程系统类型”屏幕中选择“仅限SSH” .

    • 输入连接信息,然后选择完成 .

    • 连接到新主机 . (假设已经设置了SSH密钥 . )

    • 连接后,深入查看主机的Sftp文件,选择一个文件夹,然后从项目的上下文菜单中选择 Create Remote Project . (等待创建远程项目 . )

    如果正确完成,现在应该可以从Project Explorer和eclipse中的其他视角访问新的远程项目 . 通过正确的SSH连接设置,密码可以成为正常SSH身份验证过程的可选部分 . 现在创建了一个使用Eclipse通过SSH的远程项目 .

  • 11

    最简单的方法是在Linux Box上运行Eclipse CDT并使用X11-Forwarding或远程桌面软件(如VNC) .

    当然,这只有当Linux上的Eclipse存在且您的网络连接足够快时才可能 .

    优点是,由于一切都是本地的,您不会遇到同步问题,并且您不会遇到任何棘手的跨平台问题 .

    如果盒子上没有eclipse,你可以考虑通过SMB(或SSHFS)共享你的linux工作目录,并从你的windows机器访问它,但这需要相当多的设置 .

    两者都比拥有两个副本更好,特别是当它是跨平台的时候 .

  • 0

    我自己(或曾经)在同一地点,我最后检查了Linux主机上的samba共享,并在带有记事本的Windows机器上本地编辑该共享,然后我通过PuTTY在Linux机器上编译 . (我们不允许在Linux主机上更新10个版本的编辑器,它没有Java,所以我放弃了X11转发)

    现在......我在Windows主机上的VM中运行现代Linux,将我想要的所有工具(例如CDT)添加到VM,然后我签出并构建一个非常类似于RTE的chroot监狱 .

    这是一个笨重的解决方案,但我想我会把它扔进去 .

  • 2

    除了使用sshfs之外,我的解决方案类似于SAMBA . 使用sshfs挂载我的远程服务器,在远程计算机上打开我的makefile项目 . 从那里开始

    我似乎也可以通过这种方式运行GUI前端 .

    构建我的远程代码非常简单:ssh address remote_make_command

    我正在寻找一个体面的调试方法 . 可能通过gdbserver?

  • 3

    我在2年前遇到了同样的问题,我通过以下方式解决了这个问题:

    1)我使用makefile构建我的项目,而不是由eclipse管理2)我使用SAMBA连接来编辑Eclipse中的文件3)构建项目:Eclipse使用makefile调用“本地”make,打开与Linux的SSH连接主办 . 在SSH命令行上,您可以提供在Linux主机上执行的参数 . 我在该参数中使用了一个makeit.sh shell脚本,该脚本在linux主机上调用“real”make . 构建的不同目标也可以通过linux主机上的本地makefile - > makeit.sh - > makefile中的参数给出 .

  • 201

    我试过了 ssh -X 但它的速度令人难以忍受 . 我也试过RSE,但它甚至不支持构建使用Makefile进行项目 .

    我读到NX比X11转发更快,但我无法让它工作 .

    最后,我发现我的服务器支持X2Go(该链接有安装说明,如果你没有) . 现在我只需要:

    • 在服务器上下载并解压缩Eclipse,

    • 在我的本地机器上安装X2Go(在Ubuntu上 sudo apt-get install x2goclient ),

    • 配置连接(主机,使用ssh键自动登录,选择运行Eclipse) .

    一切就像我在本地机器上工作一样,包括构建,调试和代码索引 . 而且没有明显的滞后 .

  • 6

    对于这种情况,您可以使用ptp eclipse https://eclipse.org/ptp/进行源浏览和构建 .

    您可以使用此插件来调试您的应用程序

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

相关问题