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

How to run gdb on an executable with arguments?

我怎样才能 运行 像 gdb -e path/to/exe -ex 'run --argnamae argvalue' 这样的东西?

让我们假设最近一两年内的 gfb 版本。

Gdb 运行s 并打印响应但不是交互式的。

我想你想要gdb --args path/to/exe command line arguments

这将启动 gdb 调试 path/to/exe 将三个命令行参数传递给您的 exe commandlinearguments,然后您可以在发布之前与 gdb 进行交互运行 命令。

至于 ImportError: No module named 'libstdcxx' 我相信这已经回答了 which points to a bug report here

似乎某些版本的 GCC 有损坏的漂亮打印机 python 脚本,您可能需要调整 python sys.path(gdb) python sys.path.append("/usr/share/gcc-4.8/python"),将路径调整为匹配系统上实际存在的任何 GCC 版本。您可以将这样的命令添加到 .gdbinit 文件中,以节省每次输入的时间。

How can I run something like ...

你可以这样做:

gdb path/to/exe -ex 'set args arg1 arg2 arg3'

或对上述使用 shorthand 表示法:

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

如果你想从文件传递参数,

试试这个

(gdb) run < the_file_contains_data