InglésFrancésEspañol

Ad


icono de página de OnWorks

gdbserver: en línea en la nube

Ejecute gdbserver en el proveedor de alojamiento gratuito de OnWorks sobre Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando gdbserver que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


gdbserver - Servidor remoto para el depurador GNU

SINOPSIS


servidor gdb comm prog [args...]

gdbserver - adjuntar comm pid

gdbserver --multi comm

DESCRIPCIÓN


servidor gdb es un programa que le permite ejecutar GDB en una máquina diferente a la
que está ejecutando el programa que se está depurando.

Uso (lado del servidor (destino)):

Primero, debe tener una copia del programa que desea depurar en el destino
sistema. El programa se puede quitar para ahorrar espacio si es necesario, como servidor gdb no le importa
sobre los símbolos. El GDB que se ejecuta en el host se encarga de todo el manejo de símbolos
.

Para utilizar el servidor, inicie sesión en el sistema de destino y ejecute el servidor gdb programa. usted
debe decirle (a) cómo comunicarse con el BGF, (b) el nombre de su programa y (c) su
argumentos. La sintaxis general es:

objetivo> gdbserver [ ...]

Por ejemplo, si usa un puerto serie, podría decir:

destino> gdbserver / dev / com1 emacs foo.txt

Esto dice servidor gdb para depurar emacs con un argumento de foo.txt, y para comunicarse con
GDB vía / dev / com1. servidor gdb ahora espera pacientemente a que el GDB anfitrión se comunique con él.

Para usar una conexión TCP, podría decir:

destino> host gdbserver: 2345 emacs foo.txt

Esto dice más o menos lo mismo que el último ejemplo, excepto que vamos a
comunicarse con el GDB "anfitrión" a través de TCP. El argumento "host: 2345" significa que estamos
esperando ver una conexión TCP desde el "host" al puerto TCP local 2345. (Actualmente, el
la parte "host" se ignora). Puede elegir cualquier número que desee para el número de puerto siempre que
ya que no entra en conflicto con ningún puerto TCP existente en el sistema de destino. Este mismo puerto
El número debe usarse en el comando "target remote" del host GDB, que se describirá
dentro de poco. Tenga en cuenta que si elige un número de puerto que entra en conflicto con otro servicio,
servidor gdb imprimirá un mensaje de error y saldrá.

servidor gdb también se puede adjuntar a programas en ejecución. Esto se logra a través del --adjuntar
argumento. La sintaxis es:

target> gdbserver --attach

pid es el ID de proceso de un proceso en ejecución. No es necesario apuntar
servidor gdb en un binario para el proceso en ejecución.

Para iniciar "gdbserver" sin proporcionar un comando inicial para ejecutar o procesar ID para adjuntar,
utilizar el --multi opción de línea de comando. En tal caso, debe conectarse utilizando "target
extendido-remoto "para iniciar el programa que desea depurar.

destino> gdbserver --multi

Uso (lado del host):

Necesita una copia sin desmontar del programa de destino en su sistema host, ya que GDB necesita
examinar sus tablas de símbolos y demás. Inicie GDB como lo haría normalmente, con el objetivo
programa como primer argumento. (Es posible que deba utilizar el --baudios opción si la línea serial
se está ejecutando a cualquier cosa excepto a 9600 baudios.) Eso es "gdb TARGET-PROG", o "gdb --baud BAUD
TARGET-PROG ". Después de eso, el único comando nuevo que debe conocer es" destino remoto "
(o "objetivo extendido-remoto"). Su argumento es el nombre de un dispositivo (generalmente una serie
dispositivo, como / dev / ttyb) o un descriptor "HOST: PORT". Por ejemplo:

(gdb) destino remoto / dev / ttyb

se comunica con el servidor a través de una línea serie / dev / ttyby:

(gdb) objetivo remoto the-target: 2345

se comunica a través de una conexión TCP al puerto 2345 en el host 'the-target', donde previamente
puesto en marcha servidor gdb con el mismo número de puerto. Tenga en cuenta que para las conexiones TCP, debe
comenzar servidor gdb antes de usar el comando `target remote ', de lo contrario, puede obtener un
error que se parece a "Conexión rechazada".

servidor gdb también puede depurar múltiples inferiores a la vez, descrito en el manual de GDB en el nodo
"Inferiores y programas" - comando de shell "info -f gdb -n 'Inferiores y programas'". En
En tal caso, utilice la variante de comando GDB "remoto extendido":

(gdb) objetivo extendido-remoto el-objetivo: 2345

El servidor gdb opción --multi puede o no puede usarse en tal caso.

CAMPUS


Hay tres modos diferentes para invocar servidor gdb:

· Depura un programa específico especificado por su nombre de programa:

gdbserver [ ...]

El comm parámetro especifica cómo debe comunicarse el servidor con GDB; es bien
un nombre de dispositivo (para usar una línea serial), un número de puerto TCP (": 1234"), o "-" o "stdio"
para usar stdin / stdout de "gdbserver". Especifique el nombre del programa para depurar prog.
Cualquier argumento restante se pasará al programa literalmente. Cuando el programa
sale, GDB cerrará la conexión y saldrá "gdbserver".

· Depura un programa específico especificando el ID de proceso de un programa en ejecución:

gdbserver - adjuntar

El comm El parámetro es como se describe arriba. Proporcione el ID de proceso de un programa en ejecución.
in pid; GDB hará todo lo demás. Como en el modo anterior, cuando el proceso
pid sale, GDB cerrará la conexión y saldrá "gdbserver".

· Modo multiproceso: depura más de un programa / proceso:

gdbserver --multi

En este modo, GDB puede instruir servidor gdb qué comando (s) ejecutar. A diferencia de los otros 2
modos, GDB no cerrará la conexión cuando salga un proceso que se está depurando, por lo que
puede depurar varios procesos en la misma sesión.

En cada uno de los modos puede especificar estas opciones:

--ayuda
Enumere todas las opciones, con breves explicaciones.

--versión
Esta opción provoca servidor gdb para imprimir su número de versión y salir.

--adjuntar
servidor gdb se adjuntará a un programa en ejecución. La sintaxis es:

target> gdbserver --attach

pid es el ID de proceso de un proceso en ejecución. No es necesario apuntar
servidor gdb en un binario para el proceso en ejecución.

--multi
Para iniciar "gdbserver" sin proporcionar un comando inicial para ejecutar o procesar ID a
adjuntar, use esta opción de línea de comando. Entonces puedes conectarte usando "target
extendido-remoto "e inicie el programa que desea depurar. La sintaxis es:

destino> gdbserver --multi

--depurar
Indique a "gdbserver" que muestre información de estado adicional sobre el proceso de depuración.
Esta opción está pensada para el desarrollo de "gdbserver" y para informes de errores al
desarrolladores.

--depuración remota
Indique a "gdbserver" que muestre la salida de depuración del protocolo remoto. Esta opción está destinada
para el desarrollo de "gdbserver" y para los informes de errores a los desarrolladores.

--debug-format = opción1[,opcion 2,...]
Indique a "gdbserver" que incluya información adicional en cada línea de salida de depuración.

--envoltura
Especifique un contenedor para iniciar programas para depurar. La opción debe ir seguida de
el nombre del contenedor, luego cualquier argumento de la línea de comandos para pasar al contenedor, luego
"-" indica el final de los argumentos del contenedor.

--una vez
De forma predeterminada, servidor gdb mantiene abierto el puerto TCP de escucha, de modo que
las conexiones son posibles. Sin embargo, si inicia "gdbserver" con el --una vez opción,
dejará de escuchar si hay más intentos de conexión después de conectarse al
primera sesión del BGF.

Use gdbserver en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

Comandos de Linux

Ad