【问题标题】:gdb source path substitution to path containing $HOME or ~gdb 源路径替换为包含 $HOME 或 ~ 的路径
【发布时间】:2020-07-20 00:47:21
【问题描述】:

我从this StackOverflow answer 知道可以更改 gdb 中的源路径,例如(gdb) set substitute-path /usr/src/include /mnt/include

但是,假设目标路径是~/source,我能否让路径包含~$HOME?例如"$HOME"/source 还是 ~/source?设置为任何这些选项后,似乎无法找到源文件。

现在看来我必须输入/home/<username>/source,但我希望在具有不同用户名的系统中自动执行此操作。

【问题讨论】:

  • 补充一下,我知道我可以使用(gdb) show env HOME 在gdb 中获取这个结果,但是我如何在上面的set substitute-path 命令中使用这个结果?

标签: debugging gdb


【解决方案1】:

我没有检查,但怀疑substitute-path 将“from”和“to”参数视为没有扩展的字符串文字。

您当然可以使用 shell 包装器达到预期的效果:

#!/bin/bash
exec gdb -ex "set substitute-path /usr/src/include $HOME/source" "$@"

【讨论】:

    猜你喜欢
    • 2014-07-15
    • 1970-01-01
    • 2014-07-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多