gcc如何编译多个源文件以便在GDB中使用?

时间:2017-09-01 16:31:32

标签: c gcc gdb

我有两个源文件,我目前正在编译成一个可执行文件。

我使用gcc -o ProgramName file1.c file2.c

我知道gdb在编译时需要-g标志,但我必须将其放错。我尝试了几件事,但没有尝试过:

gcc -g -o ProgramName file1.c file2.c正在为我工​​作。当我运行gdb - > run它表示找不到可执行文件。

如何正确编译,以便它可以在GDB中运行?

3 个答案:

答案 0 :(得分:3)

正确的命令是

gdb ProgramName

接着是

run

在提示符中。

答案 1 :(得分:1)

尝试:

gdb -tui ProgramName 

这将使用Text User Interface打开GDB,默认情况下会在屏幕上加载源代码。通过这种方式,您将知道程序是否已加载。

屏幕将被拆分,源代码位于顶部,命令行位于底部,如下所示:

gdb-tui

答案 2 :(得分:0)

请使用以下命令编译单个源文件(cxx,c) gcc -g -c file1.c file2.c(依此类推) 这将生成file1.o file2.o文件(依此类推...) 现在将目标文件编译为正式可执行文件。 gcc -g -o file.exe file1.o file2.o

在类似c ++的代码行中 g++ -g -c file1.c file2.c g++ -g -o file.exe file1.o file2.o

现在运行gdb file.exe

进一步参考: 请通过: http://www.ntu.edu.sg/home/ehchua/programming/cpp/gcc_make.html#zz-1.7