Loading Cargando...
Espere hasta que esta pantalla se haya cargado completamente

CWMORSE.EU5.ORG


EB7BMO



Estos son mis apuntes para ojearlos de vez en cuando, y si le sirve a alguien mas de ayuda, pues tanto mejor.

Utilizare el programa gdb para depurar programas escritos en C, para ello usare un sistema tipo Unix, en este caso un FreeBSD instalado en http://m-net.arbornet.org, para ello usare una de sus shells gratuitas, en bash concretamente. Para usar esta shell, la configuro en el archivo .bashrc con estas pocas lineas

export FIGNORE=".o" # "Extensiones" a ignorar por el ESC-ESC
# Por seguridad, elegimos por defecto que al copiar, se nos pregunte si
# queremos sobreescribir el fichero destino. Lo mismo hacemos con mv y rm
alias cp='cp -i'
alias mv='mv -i'
alias rm='rm -i'
#Los comentarios van hechos con el caracter #

Como editor de textos o de codigo usare el Vim, el cual esta en la mayoria de sistemas Unix/Linux aqui van algunas lineas para mi configuracon en el archivo .vimrc.

set number
syntax on
set dictionary=/home/eb7bmo/diccionario
set nocompatible
set ruler

" Para redactar facilmente
iab _miweb http://cwmorse.eu5.org/
iab _miweb2 http://m-net.arbornet.org/~eb7bmo
iab _salu Muchas gracias y saludos.
iab _mail eb7bmo@hotmail.com
iab _lineac /*=============================*/

"Aqui los comentarios van con el caracter "(doble comilla)

Usare tambien el programa screen, para hacer la depuracion y la edicion de codigo mas facil.

Todo lo expuesto aqui, tambien lo trabajo desde mi sistema Linux/Ubuntu 10.10 (maverick), pero teniendo la shell gratuita no nos hace falta tener un linux instalado.

Para empezar nos conectaremos con un telnet m-net.arbornet.org y cuando nos pida login introducimos "newuser", sin las comillas claro esta. A partir de ahi, seguir los pasos hasta obetener la cuenta shell.

Ya tenemos todo lo que nos hace falta, un sistema, una shell, el depurador gdb, el editor vim, el programa screen y como no el compilador gcc. Al grano, editamos un codigo en lenguaje C para probar todo esto, y seria por ejemplo este:

#include <stdio.h>

main()
{
   int Numero1;
   int Numero2;
   int resultado;
   Numero1 = 20;
   Numero2 = 100;
   resultado = Numero2 + Numero2;
   printf("Su Multiplicacion es %d", resultado);
   printf("\n\n");
}


Una vez que estamos en el prompt de la shell escribimos "screen", lo que hace que entremos en este programa, nos sale una pantalla de presentacion y pulsamos enter, ya estamos en el, observamos que es una shell corriente, pero no es asi, para salir podemos usar el comando "exit". Una vez que estamos dentro, vamos a crear una divisin de pantalla, que es para lo que yo lo utilizo, pulsamos CONTROL + a, que nos pone en modo comando y despues pulsamos S mayuscula, premio, ya tenemos las dos pantallas para trabajar. Pero si observamos bien, en la pantalla de abajo no tenemos nada, tranquilos, vamos a por ella. El cursor esta en la de arriba, pulsamos de nuevo CONTROL+a, y despues la tela de tabulacion, si esa, la de las dos flechitas. Ahora estamos enla ventana de abajo, pero solo esta el cursor parpadeando enla parte de arriba pues no hay nada en ella. Vamos a crear otra shell, para ello pasamos al modo comando, si eso, CONTROL+a, y a continuacion pulsamos la letra c, de crear :). Ya tenemos las dos shell abiertas y listas para trabajar en ellas. Para cambiar de una a otro solo tienes que pasar a modo comando y pulsar la tecla de tabulacion

Vamos a crear el codigo en C de arriba, para ello abrimos el vim con el nombre del archivo, por ejemplo
"vim prueba.c", a mi me gusta hacerlo en la shell superior. Ahora copiamos el codigo en este archivo y una vez hecho, lo compilamos desde el vim, ya sabeis, ESC y

:!gcc % -o prueba -g

el caracter % indica el nombre del archivo en uso, prueba.c, el -o seguido del nombre del ejecutable que deseamos crear, y por ultimo y mas importante el argumento -g que hace que el ejecutable tenga lo necesario para poderlo depugar con el potentisimo gdb.

Probamos el ejecutable, con ESC y

:!./prueba

Claro que esto sera si no se tenido fallos al escribir el codigo, pues en otro caso nos dara un aviso del error con linea en la que se ha producido en el tiempo de compilacion. Si son programas cortos, se mira la linea y se accede a ella, pero si es un programa bien largo, la cosa sera mejor automatizarla, para ello usamos el comando :make desde el vim, pero antes creamos un simple makefile para este programa, y seria algo asi..

prueba: prueba.c
gcc -o program prueba.c -g

Ahora, ya podemos compilarlo tambien desde vim pero con el comando:

:make

Si el codigo tiene errores nos lleva hasta la linea automaticamentre, cosa que se agradece...

Una vez que se ha compilado sin errores nos vamos a la de abajo, CONTROL+a y tabulacion, y ejecutamos el gdb con el parametro "prueba", una cosas asi

gdb prueba

Ya podemos depurarlo si tiene errores en tiempo de ejecucion, y tambien editar y volver a compilar y volverlo a correr, eso si, si la edicion que hagamos en el codigo hace que las lineas aumenten o disminuyan, habra que tener cuidado con los breakpoints que hayamos puesto, pues ahora quedan en otras lineas de programa.

Y eso es todo por el momento, en otra ocasion vere si hago alguna chuletilla sobre como usar los comandos del gdb con el programa anterior y otros.

Muchas gracias y saludos.

QRZ callsign lookup:


QTH Locator: