gpt4 book ai didi

c++ - 如何附加到带有命令行参数的进程?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:25:26 30 4
gpt4 key购买 nike

我启动了一个 Centos 进程,现在已经运行了几个小时。我使用 gcc -g 构建共享库和可执行文件。我通过输入 gdb ./MatchUpAccurate 启动了 gdb 进程。 gdb 启动后,我输入 run -input XXXXXXX -fileloc YYYYY -version 5

当我输入 ps -ef 时,我看到两个进程 ID 号,一个用于 gdb ./MatchUpAccurate.exe,另一个用于 ./MatchUpAccurate。 exe -input XXXXXXX -fileloc YYYYY -version 5.

由于子进程现在已经运行了几个小时,我想附加到它,这样我就可以检查它的变量值并查看它当前正在运行的指令。

我阅读了一些文档,了解如何使用 gdb 附加一个已经运行的进程。但是,所有示例都没有命令行参数。我想知道如何使用 gdb 附加带有命令行参数的进程。我将能够设置断点、检查变量、查看调用堆栈并在不终止原始进程的情况下单步执行执行路径。谢谢。

最佳答案

您需要附加到 pid:

gdb binary_name pid

或者,启动 gdb 并附加

user@host ~> gdb binary_name
(gdb) attach 1234

关于c++ - 如何附加到带有命令行参数的进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4900244/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com