如何在带有参数的可执行文件上运行gdb?

如何在带有参数的可执行文件上运行gdb?,gdb,Gdb,如何运行类似于gdb-e path/to/exe-ex'run--argnamae argvalue' 让我们假设一个最近的gfb版本,在过去一两年内 Gdb运行并打印响应,但不以交互方式。我想您需要Gdb--args path/to/exe命令行参数 它将启动gdb调试path/to/exe将三个命令行参数传递给您的exe命令、行和参数,然后您可以在发出run命令之前与gdb交互 至于导入错误:没有名为'libstdcxx'的模块。我相信这已经回答了,它指向一个错误报告 似乎某些版本的GCC有

如何运行类似于
gdb-e path/to/exe-ex'run--argnamae argvalue'

让我们假设一个最近的gfb版本,在过去一两年内


Gdb运行并打印响应,但不以交互方式。

我想您需要
Gdb--args path/to/exe命令行参数

它将启动gdb调试
path/to/exe
将三个命令行参数传递给您的exe
命令
参数
,然后您可以在发出run命令之前与gdb交互

至于导入错误:没有名为'libstdcxx'的模块。我相信这已经回答了,它指向一个错误报告


似乎某些版本的GCC有一个损坏的python脚本,您可能需要使用
(gdb)python sys.path.append(“/usr/share/GCC-4.8/python”)
,调整路径以匹配系统上实际存在的任何GCC版本。您可以将这样的命令添加到
.gdbinit
文件中,以保存每次键入的命令。

我想您需要
gdb--args path/to/exe命令行参数

它将启动gdb调试
path/to/exe
将三个命令行参数传递给您的exe
命令
参数
,然后您可以在发出run命令之前与gdb交互

至于导入错误:没有名为'libstdcxx'的模块。我相信这已经回答了,它指向一个错误报告

似乎某些版本的GCC有一个损坏的python脚本,您可能需要使用
(gdb)python sys.path.append(“/usr/share/GCC-4.8/python”)
,调整路径以匹配系统上实际存在的任何GCC版本。您可能会在
.gdbinit
文件中添加这样的命令,以保存每次键入的内容

我怎么能跑得像

您可以这样做:

gdb path/to/exe -ex 'set args arg1 arg2 arg3'
或对上述内容使用简写符号:

gdb --args path/to/exe arg1 arg2 arg3
我怎么能跑得像

您可以这样做:

gdb path/to/exe -ex 'set args arg1 arg2 arg3'
或对上述内容使用简写符号:

gdb --args path/to/exe arg1 arg2 arg3

“当然,我得到了无用的错误。”这表明存在安装问题。如果你想摆脱它,你可能应该问一个单独的问题,并编辑此问题以删除对ImportError的引用。这是否回答了你的问题?“当然,我得到了无用的错误。”这表明存在安装问题。如果你想摆脱它,你可能应该问一个单独的问题,并编辑此问题以删除对ImportError的引用。这是否回答了你的问题?很高兴知道!但是关于
gdb--args path/to/exe command line=“可以在”参数中包含空格怎么办?运行gdb时,正在报告
path/to/exe无法处理包含空格的命令行参数。有没有处理带空格的参数的解决方案?我认为只有在使用了
set startup with shell 0
时才会发生这个错误。现在,除了不禁用使用shell启动
之外,我看不到任何解决方法()!但是关于
gdb--args path/to/exe command line=“可以在”参数中包含空格怎么办?运行gdb时,正在报告
path/to/exe无法处理包含空格的命令行参数。有没有处理带空格的参数的解决方案?我认为只有在使用了
set startup with shell 0
时才会发生这个错误。现在,除了不使用shell禁用
启动之外,我看不到其他解决方法()