Имеем программу на assembleer.
1 .data
2 str:
3 .string "test\n"
4
5 .text
6
7 .globl main
8
9 main:
10
11 pushl $str
12 call printf
13 addl $4, %esp
14 movl $0, %eax
15 ret
Компилируем, запускаем.
$ gcc -g temp.s
$ ./a.out
test
Всё верно, пытаемся отладить:
(gdb) run > log
Starting program: /home/rokker/yadisk/tmp/temps/a.out > log
Breakpoint 1, main () at temp.s:11
pushl $str
(gdb) s
call printf
(gdb) s
__printf (format=0x804a020 "test\n") at printf.c:28
printf.c: No such file or directory.
Смысл в том, чтобы поместить вывод программы в файл log. Такого же типа ошибка при использовании scanf.
ubuntu 14.04,
gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1),
GNU gdb (Ubuntu 7.7-0ubuntu3) 7.7