Estoy intentando depurar un programa de ensamblaje con gdb y Emacs. Mi problema es que, cuando intento depurar paso a paso, no muestra una flecha de puntero en la línea de ejecución actual. El código que estoy tratando de depurar es:Emacs gdb: flecha de la pantalla al depurar el ensamblado
SECTION .data ; Section containing initialised data
EatMsg: db "Eat at Joe's!",10
EatLen: equ $-EatMsg
SECTION .bss ; Section containing uninitialized data
SECTION .text ; Section containing code
global _start ; Linker needs this to find the entry point!
_start:
nop ; This no-op keeps gdb happy...
mov eax,4 ; Specify sys_write call
mov ebx,1 ; Specify File Descriptor 1: Standard Output
mov ecx,EatMsg ; Pass offset of the message
mov edx,EatLen ; Pass the length of the message
int 80H ; Make kernel call
MOV eax,1 ; Code for Exit Syscall
mov ebx,0 ; Return a code of zero
int 80H ; Make kernel call
y estoy compilando con estas líneas:
nasm -f elf -g -F stabs eatsyscall.asm -l eatsyscall.lst
ld -melf_i386 -o eatsyscall eatsyscall.o
Lo que veo en Emacs es que. En esta captura de pantalla, actualmente estoy ejecutando la línea después del punto de corte y no aparece ningún puntero a esa línea. ¿Es posible tener uno?
Tengo exactamente el mismo problema. Uso Emacs 24 y tengo la última versión estable de NASM. Simplemente no puedo ver esa flecha ... También compilé de la misma forma que usaste usando '-g', pero nada. – caisah