GDB 错误 - 不是可执行格式:无法识别文件格式
GDB error - not in executable format: file format not recognized
我正在尝试将 gdb 与简单的 hello world 程序一起使用,但遇到了一些问题
hello.c
#include <stdio.h>
int main()
{
printf("Hello World");
return 0;
}
然后我使用以下两个命令进行编译:
gcc -o hello.o hello.c
gcc -g -o hello.o hello.c
但是当我输入 gdb hello.c
时出现错误:
"/home/myName/hello.c": not in executable format: file format not recognized
有人知道这是为什么吗?
您需要 运行 并调试可执行文件而不是源文件。按照惯例,可执行文件不应该有 .o,因为它们用于中间对象。所以尝试:gcc -g -o hello hello.c && gdb ./hello
我正在尝试将 gdb 与简单的 hello world 程序一起使用,但遇到了一些问题
hello.c
#include <stdio.h>
int main()
{
printf("Hello World");
return 0;
}
然后我使用以下两个命令进行编译:
gcc -o hello.o hello.c
gcc -g -o hello.o hello.c
但是当我输入 gdb hello.c
时出现错误:
"/home/myName/hello.c": not in executable format: file format not recognized
有人知道这是为什么吗?
您需要 运行 并调试可执行文件而不是源文件。按照惯例,可执行文件不应该有 .o,因为它们用于中间对象。所以尝试:gcc -g -o hello hello.c && gdb ./hello