c++ eclipse eclipse-cdt remote-debugging aix

c++ - ¿Cómo hacer depuración remota con Eclipse CDT sin gdbserver?



eclipse-cdt remote-debugging (3)

Normalmente no tomaría una foto en la oscuridad en una pregunta de la que no puedo realmente probar la respuesta, pero como esta se ha quedado por un día, voy a intentarlo. Parece por mirar:

http://wiki.eclipse.org/TM_and_RSE_FAQ#How_can_I_do_Remote_Debugging_with_CDT.3F

... que incluso si el CDT ha cambiado desde que se creó esa página wiki, aún debería poder cambiar el comando de depurar a:

ssh remotehost gdb

en lugar de usar TM que usa gdbserver. Esto probablemente será un poco más lento que la depuración remota de TM, ya que en realidad usa un gdb local, pero por otro lado, no tendrá que montar su código fuente para que esté disponible para el depurador local (y si NFS o SMB lo necesitan). estás en una LAN, probablemente no importará de ninguna manera).

También hay una implementación TCF de referencia para Linux, que puede o no tener la suerte de recompilar para AIX, pero permite la depuración remota si gdbserver no está disponible:

http://wiki.eclipse.org/DSDP/TM/TCF_FAQ

Estamos utilizando el Eclipse CDT 5 C ++ IDE en Windows para desarrollar una aplicación C ++ en un host AIX remoto.

Eclipse CDT tiene la capacidad de realizar la depuración remota utilizando gdbserver. Desafortunadamente, gdbserver no es compatible con AIX.

¿Alguien está familiarizado con una forma de depurar remotamente usando Eclipse CDT sin gdbserver? Tal vez usando una conexión de shell SSH a gdb?


También intenté depurar remotamente un aix-appl con windows eclipse-cdt-gdb. Se bloqueó al final con unix / windows path-problems. Tal vez mi resultado puede ayudar un poco más, tal vez ya lo consiguió. Me interesa tu comentario. preguntado en el portal de noticias de eclipse: siguiendo la respuesta de martin oberhuber (gracias de nuevo) intenté dsp dd (también bloqueado con el problema de ruta) y establecí una solicitud en eclipse bugzilla.

aquí el enlace a las noticias: http://www.eclipse.org/newsportal/article.php?id=406&group=eclipse.dsdp.tm Aquí mi bugzilla: https://bugs.eclipse.org/bugs/show_bug.cgi ? id = 252758

Por el momento todavía depuramos localy con xldb pero estoy intentando ddd-gdb en este momento. Al menos localmente gdb se está ejecutando.


finalmente conseguí ejecutar gdb remotamente de todos modos ahora. En el símbolo de error en la barra de tareas tomé Configuraciones de depuración - Depuración de hardware GDB.

En Main C / C ++ Applications establecí la ruta completa en el recurso compartido de Samba del ejecutable ( X:/abin/vlmi9506 ). También configuré una carpeta vinculada en X:/abin en el proyecto. Luego modifiqué mi script por lotes en la configuración de GDB. No está llamando directamente a gdb en la sesión de modificación, sino a una secuencia de comandos de shell unix, que abre gdb. Con esto tengo la posibilidad de establecer algunas variables de entorno de Unix para el programa antes de realizar la depuración. La llamada en mi lote:

plink.exe prevoax1 -l suttera -pw XXXXX -i /proj/user/dev/suttera/vl/9506/test/vlmi9506ddd.run 20155 dev o m

En el script de Unix, comencé gdb con los parámetros de línea de comando de eclipse, que encontré en mis versiones anteriores. La llamada en el comando de shell se ve así:

gdb -nw -i mi -cd=$LVarPathExec $LVarPathExec/vlmi9506

Entonces IBM acaba de dar gdb 6.0 para AIX. Encontré la versión 6.8 en la red en http://www.perzl.org/aix/index.php?n=Main.Gdb . Nuestro administrador lo instaló.

Ahora puedo recorrer el programa y observar las variables. Incluso puedo escribir comandos gdb directamente en la vista de consola. yabadabadooooooo

Espero que ayude a otros también. No puedo decir, cuál fue realmente la acción ganadora. Pero cada respuesta da más preguntas nuevas. Ahora tengo 3 de ellos.

  1. Cuando inicio la configuración de depuración, tengo que hacer clic en reiniciar en la barra de herramientas para entrar realmente en el procedimiento principal. ¿Es posible entrar directamente en main sin reiniciar?
  2. En AIX, nuestros programas se preprocesan primero para sql incorporado. La fuente c preprocesada se coloca en otro directorio. Cuando hago doble clic en la línea para establecer un punto de interrupción, recibo la advertencia de "punto de corte no resuelto" y en la consola de gdb, veo que el corte está configurado en la fuente preprocesada que está mal. ¿Es posible establecer los puntos de interrupción en la fuente correcta?
  3. Estamos usando CICS en AIX. Con xldb-Debugger y el comando CDCN de CICS administramos que la depuración se inicie cuando ingresemos en nuestros programas. ¿Es posible obtenerlo de forma remota (en plink) con gdb-eclipse también?