c eclipse ssh eclipse-cdt remote-debugging

Trabajar en un proyecto remoto con Eclipse a través de SSH



eclipse-cdt remote-debugging (7)

Estoy en el mismo lugar (o lo estuve), FWIW terminé revisando un recurso compartido de samba en el host de Linux y editando ese recurso compartido en la máquina de Windows con Notepad ++, luego lo compilé en la caja de Linux a través de PuTTY. (No se nos permitió actualizar las versiones de diez y / o de los editores en el host de Linux y no tenía Java, así que renuncié al reenvío de X11)

Ahora ... ejecuto Linux moderno en una máquina virtual en mi host de Windows, agrego todas las herramientas que quiero (por ejemplo, CDT) a la VM y luego pago y construyo en una cárcel chroot que se parece mucho a la RTE.

Es una solución torpe, pero pensé que la lanzaría a la mezcla.

Tengo los siguientes cuadros:

  1. Un cuadro de Windows con Eclipse CDT,
  2. Una caja de Linux, accesible para mí solo a través de SSH.

Tanto el compilador como el hardware necesarios para compilar y ejecutar mi proyecto solo se encuentran en la máquina B.

Me gustaría trabajar "de forma transparente" desde un cuadro de Windows en ese proyecto utilizando Eclipse CDT y ser capaz de construir, ejecutar y depurar el proyecto de forma remota desde el IDE.

¿Cómo configuro eso?

  • El edificio funcionará? ¿Alguna solución más simple que escribir un archivo MAKE local que rsync el proyecto y luego llamar a un archivo MAKE remoto para iniciar la construcción real? ¿Tiene Eclipse Manage Build una función para eso?
  • La depuración funcionará?
  • Preferiblemente: ¿funcionará la indexación del código Eclipse CDT? ¿Debo copiar todos los archivos de encabezado requeridos de la máquina B a la máquina A y agregarlos para incluir la ruta manualmente?

Intenté ssh -X pero fue insoportablemente lento. También probé con RSE, pero ni siquiera soporté la construcción del proyecto con un Makefile.

Leí que NX es más rápido que el reenvío de X11, pero no pude hacerlo funcionar.

Finalmente, descubrí que mi servidor es compatible con X2Go (el enlace tiene instrucciones de instalación si las tuyas no). Ahora solo tenía que:

  • descargar y descomprimir Eclipse en el servidor,
  • instalar X2Go en mi máquina local ( sudo apt-get install x2goclient en Ubuntu),
  • configure la conexión (host, inicio de sesión automático con la clave ssh, elija ejecutar Eclipse).

Todo es como si estuviera trabajando en una máquina local, incluida la construcción, la depuración y la indexación de código. Y no hay retrasos notables.


La forma más simple sería ejecutar Eclipse CDT en Linux Box y usar X11-Forwarding o software de escritorio remoto como VNC.

Esto, por supuesto, solo es posible cuando Eclipse está presente en la caja de Linux y su conexión de red a la caja es lo suficientemente rápida.

La ventaja es que, debido a que todo es local, no tendrá problemas de sincronización y no tendrá problemas incómodos con otras plataformas.

Si no tiene eclipse en la caja, podría pensar en compartir su directorio de trabajo de Linux a través de SMB (o SSHFS) y acceder desde su máquina de Windows, pero eso requeriría bastante configuración.

Ambos serían mejores que tener dos copias, especialmente cuando es multiplataforma.


Mi solución es similar a la de SAMBA excepto que usa sshfs. Monte mi servidor remoto con sshfs, abra mi proyecto makefile en la máquina remota. Ir desde allí

Parece que puedo ejecutar una interfaz gráfica de usuario para mercurial de esta manera también.

Crear mi código remoto es tan simple como: ssh address remote_make_command

Estoy buscando una forma decente de depurar. Posiblemente a través de gdbserver?



Pruebe el Remote System Explorer (RSE). Es un conjunto de complementos para hacer exactamente lo que quieres.

RSE ya puede estar incluido en su instalación actual de Eclipse. Para verificar en Eclipse Indigo, vaya a Ventana > Abrir perspectiva > Otros ... y elija Explorador de sistema remoto desde el cuadro de diálogo Abrir perspectiva para abrir la perspectiva de RSE.

Para crear un proyecto remoto SSH desde la perspectiva de RSE en Eclipse:

  1. Defina una nueva conexión y elija SSH solo desde la pantalla Seleccionar tipo de sistema remoto en el cuadro de diálogo Nueva conexión.
  2. Ingrese la información de conexión y luego elija Finalizar.
  3. Conéctese al nuevo host. (Asume que las claves SSH ya están configuradas).
  4. Una vez conectado, profundice en los archivos Sftp del host , elija una carpeta y seleccione Crear proyecto remoto en el menú contextual del elemento. (Espere a que se cree el proyecto remoto).

Si se hace correctamente, ahora debe haber un nuevo proyecto remoto accesible desde el Explorador de proyectos y otras perspectivas dentro de Eclipse. Con la configuración de conexión SSH correctamente, las contraseñas se pueden convertir en una parte opcional del proceso normal de autenticación SSH. Se ha creado un proyecto remoto con Eclipse vía SSH.


Tuve el mismo problema hace 2 años y lo resolví de la siguiente manera:

1) Construyo mis proyectos con makefiles, no administrados por eclipse 2) Uso una conexión SAMBA para editar los archivos dentro de Eclipse 3) Construcción del proyecto: Eclipse llama una marca "local" con un archivo MAKE que abre una conexión SSH a Linux Anfitrión. En la línea de comandos de SSH puede dar los parámetros que se ejecutan en el host de Linux. Utilizo para ese parámetro un script de shell makeit.sh que llama a la marca "real" en el host de Linux. Los diferentes objetivos para la construcción también se pueden dar por parámetros del archivo make local -> makeit.sh -> makefile en el host de Linux.