Difference between revisions of "Debugger Setup/es"

From Free Pascal wiki
Jump to navigationJump to search
(13 intermediate revisions by the same user not shown)
Line 2: Line 2:
 
__TOC__  
 
__TOC__  
 
= Configure the IDE =
 
= Configure the IDE =
 +
 +
--- Traducido de la versión en ingles realizando algunos añadidos / modificaciones.
  
 
Para ser capaces de depurar los proyectos, es necesario asegurarse de tener el IDE correctamente configurado.
 
Para ser capaces de depurar los proyectos, es necesario asegurarse de tener el IDE correctamente configurado.
Line 18: Line 20:
 
* El trayecto hacia gdb.exe puede diferir:
 
* El trayecto hacia gdb.exe puede diferir:
 
** En sistemas basados en Linux/Unix based suele ser algo así como "/usr/bin/gdb" Caso de no estar ver https://www.gnu.org/software/gdb/ '''Paquete gdb'''.
 
** En sistemas basados en Linux/Unix based suele ser algo así como "/usr/bin/gdb" Caso de no estar ver https://www.gnu.org/software/gdb/ '''Paquete gdb'''.
** En Windows debería encontrarse en una carpeta llamada "mingw\bin\" bajo el directorio en el cual Lazarus se encuenta instalado.
+
 
 +
En mi caso después de instalar Lazarus 6.1 bajo Debian 8.3 no tenía instalado previamente gdb, así que instalé gdb (GNU Debugger) ofreciéndome disponible la versión 7.7.1. La primera vez que se arranca Lazarus '''si no lo encuentra''' solicita asignarle uno, se puede obviar y continuar pero es recomendable configurarlo adecuadamente.
 +
 
 +
El instalador de paquetes también ofrece otro depurador gdb-arm-none-eabi para aquellos que lo requieran. Si alguien sabe si hay otros para las variantes ARM y quiere completar esta entrada, adelante.
 +
 
 +
* En Windows debería encontrarse en una carpeta llamada "mingw\bin\" bajo el directorio en el cual Lazarus se encuenta instalado.
  
 
Por ejemplo, en la instalción de Lazarus 1.6 bajo Windows se puede ver:
 
Por ejemplo, en la instalción de Lazarus 1.6 bajo Windows se puede ver:
 +
 
_________________________________________________________
 
_________________________________________________________
  
GNU debugger through SSH (gdb)
+
*GNU debugger through SSH (gdb)
  
*C:\lazarus\mingw\bin\gdb.exe
+
**C:\lazarus\mingw\bin\gdb.exe
*/usr/bin/ssh user@remote /usr/bin/gdb
+
**/usr/bin/ssh user@remote /usr/bin/gdb
 
_________________________________________________________
 
_________________________________________________________
  
  
GNU remote debugger (gdbserver)
+
*GNU remote debugger (gdbserver)
  
*/usr/bin/ssh user@remote /usr/bin/gdb
+
**/usr/bin/ssh user@remote /usr/bin/gdb
*C:\lazarus\\mingw\i386-win32\bin\gdb.exe
+
**C:\lazarus\\mingw\i386-win32\bin\gdb.exe
*C:\lazarus\\mingw\bin\gdb.exe
+
**C:\lazarus\\mingw\bin\gdb.exe
*C:\lazarus\mingw\bin\gdb.exe
+
**C:\lazarus\mingw\bin\gdb.exe
 
_________________________________________________________
 
_________________________________________________________
  
GNU debugger (gdb)
+
*GNU debugger (gdb)
  
$(LazarusDir)\mingw\$(TargetCPU)-$(TargetOS)\bin\gdb.exe
+
**$(LazarusDir)\mingw\$(TargetCPU)-$(TargetOS)\bin\gdb.exe
*C:\lazarus\\mingw\i386-win32\bin\gdb.exe
+
**C:\lazarus\\mingw\i386-win32\bin\gdb.exe
*C:\lazarus\\mingw\bin\gdb.exe
+
**C:\lazarus\\mingw\bin\gdb.exe
*C:\lazarus\mingw\bin\gdb.exe
+
**C:\lazarus\mingw\bin\gdb.exe
 
_________________________________________________________
 
_________________________________________________________
  
= Project Options =
+
= Opciones de proyecto =
  
In order to debug your project, you need to tell the IDE to compile it in a special way, which provides additional information required by the debugger.
+
A la hora de depurar un proyecto es necesario indicarle al IDE que lo compile de una forma especial, la cual provee información adicional requerida por el depurador.
  
Please note: This will considerably increase the size of your executable ([[Lazarus_Faq#Why_are_the_generated_binaries_so_big.3F |See FAQ]]). If you want to build a release version of your software you should switch those settings off (see also [[IDE_Window:_Compiler_Options#Build_modes |Build Modes]])
+
'''A tener en cuenta''': Esto incrementará considerablemente el tamaño de tu ejecutable([[Lazarus_Faq#Why_are_the_generated_binaries_so_big.3F |See FAQ]]). Si necesitas utilizar una versión release de tu software entonces deberías poner estas configuraciones a off (ver además [[IDE_Window:_Compiler_Options#Build_modes |Build Modes]])
  
The required settings are made in the "Project Options" dialog:
+
Las configuraciones requeridas se efectúan en el diálogo de "Proyecto -> Opciones de Proyecto...":
 
<table><tr><td> [[image:Dbg_setup_project1.png]] </td><td> [[image:Dbg_setup_project2.png]] </td></tr></table>
 
<table><tr><td> [[image:Dbg_setup_project1.png]] </td><td> [[image:Dbg_setup_project2.png]] </td></tr></table>
  
* You must enable the "Generate Debug Info for GDB"
+
* Debes habilitar "Generate Debug Info for GDB".
** On Windows/Linux 32 bit it is highly recommended to use "Dwarf" <br>[[image:Dbg_setup_project3.png]]
+
** Bajo Windows/Linux 32 bit es altamente recomendable utilizar "Dwarf" <br>[[image:Dbg_setup_project3.png]]
* You must <b>not</b> use any of the following
+
* <b>No</b> debes utilizar cualquiera de los siguientes:
 
** "Strip Symbols"
 
** "Strip Symbols"
 
** "Link Smart"
 
** "Link Smart"
** Any optimization other than "Level 0" ("Level 1" may be used, but in some cases may cause issues) <br>[[image:Dbg_setup_project4.png]]
+
** Cualquier optimización diferente de "Level 0" (debe usarse "Level 1" , pero en algunos casos puede originar incidencias) <br>[[image:Dbg_setup_project4.png]]
  
 
= GDB Version =
 
= GDB Version =
  
GDB 7.5 is not supported by Lazarus 1.0. It can be used with trunk only.
+
GDB 7.5 no está soportada por Lazarus 1.0. Puede utilizarse solamente con trunk.
  
GDB 7.7.1 seems to work well with Lazarus 1.2.4.
+
GDB 7.7.1 parece funcionar bien con Lazarus 1.2.4., probablemente también con Lazarus 1.6, añadir comentarios en caso de incidencias:
  
 
= See also =
 
= See also =

Revision as of 14:24, 6 April 2016

English (en) español (es) français (fr) русский (ru)

Configure the IDE

--- Traducido de la versión en ingles realizando algunos añadidos / modificaciones.

Para ser capaces de depurar los proyectos, es necesario asegurarse de tener el IDE correctamente configurado.

Estas configuraciones no cambian normalmente. Lo habitual es que se configuren una sola vez después de instalar Lazarus o bien si se cambia o actualiza la instalación.

Open the Lazarus option dialog: Dbg setup options1.png

La imagen muestra donde encontrar el diálogo de opciones en Lazarus 0.9.31 y posteriores (Herramientas -> Opciones). En versiones previas la entrada del menú se encontraba en "Entorno".


Dbg setup options2.png

  • Asegúrate de tener seleccionada la opción "GNU debugger (GDB)".
  • El trayecto hacia gdb.exe puede diferir:

En mi caso después de instalar Lazarus 6.1 bajo Debian 8.3 no tenía instalado previamente gdb, así que instalé gdb (GNU Debugger) ofreciéndome disponible la versión 7.7.1. La primera vez que se arranca Lazarus si no lo encuentra solicita asignarle uno, se puede obviar y continuar pero es recomendable configurarlo adecuadamente.

El instalador de paquetes también ofrece otro depurador gdb-arm-none-eabi para aquellos que lo requieran. Si alguien sabe si hay otros para las variantes ARM y quiere completar esta entrada, adelante.

  • En Windows debería encontrarse en una carpeta llamada "mingw\bin\" bajo el directorio en el cual Lazarus se encuenta instalado.

Por ejemplo, en la instalción de Lazarus 1.6 bajo Windows se puede ver:

_________________________________________________________

  • GNU debugger through SSH (gdb)
    • C:\lazarus\mingw\bin\gdb.exe
    • /usr/bin/ssh user@remote /usr/bin/gdb

_________________________________________________________


  • GNU remote debugger (gdbserver)
    • /usr/bin/ssh user@remote /usr/bin/gdb
    • C:\lazarus\\mingw\i386-win32\bin\gdb.exe
    • C:\lazarus\\mingw\bin\gdb.exe
    • C:\lazarus\mingw\bin\gdb.exe

_________________________________________________________

  • GNU debugger (gdb)
    • $(LazarusDir)\mingw\$(TargetCPU)-$(TargetOS)\bin\gdb.exe
    • C:\lazarus\\mingw\i386-win32\bin\gdb.exe
    • C:\lazarus\\mingw\bin\gdb.exe
    • C:\lazarus\mingw\bin\gdb.exe

_________________________________________________________

Opciones de proyecto

A la hora de depurar un proyecto es necesario indicarle al IDE que lo compile de una forma especial, la cual provee información adicional requerida por el depurador.

A tener en cuenta: Esto incrementará considerablemente el tamaño de tu ejecutable(See FAQ). Si necesitas utilizar una versión release de tu software entonces deberías poner estas configuraciones a off (ver además Build Modes)

Las configuraciones requeridas se efectúan en el diálogo de "Proyecto -> Opciones de Proyecto...":

Dbg setup project1.png Dbg setup project2.png
  • Debes habilitar "Generate Debug Info for GDB".
    • Bajo Windows/Linux 32 bit es altamente recomendable utilizar "Dwarf"
      Dbg setup project3.png
  • No debes utilizar cualquiera de los siguientes:
    • "Strip Symbols"
    • "Link Smart"
    • Cualquier optimización diferente de "Level 0" (debe usarse "Level 1" , pero en algunos casos puede originar incidencias)
      Dbg setup project4.png

GDB Version

GDB 7.5 no está soportada por Lazarus 1.0. Puede utilizarse solamente con trunk.

GDB 7.7.1 parece funcionar bien con Lazarus 1.2.4., probablemente también con Lazarus 1.6, añadir comentarios en caso de incidencias:

See also

External links