如何在带参数的可执行文件上 运行 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 command
、line
和 arguments
,然后您可以在发布之前与 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
我怎样才能 运行 像 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 command
、line
和 arguments
,然后您可以在发布之前与 gdb 进行交互运行 命令。
至于 ImportError: No module named 'libstdcxx'
我相信这已经回答了
似乎某些版本的 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