gdb 远程调试缓存远程目标

gdb remote debug cache remote target

我正在使用 CLion 连接到远程 gdbserver,它是远程计算机上的 运行(通过 ssh 端口转发)。

除了一件事,我工作得很好,它会下载所有链接的依赖项每次我连接到gdbserver:

所以,我找不到是否有任何标志可以传入 gdb remote 来缓存这些文件。

没有执行此操作的内置方法。

您可以手动复制所有需要的文件一次,然后使用 set sysroot。但是,这有点容易出错,因为您必须记住在任何更改时进行同步。

另一个想法是设置某种缓存远程文件系统。 (但我不知道是否有这样做的罐头。)

如果您的问题不是缓存库而是实际上加快了 GDB 启动过程,您可以将 solib-absolute-prefix 设置为主机上包含所有共享库的位置。 如果您在主机上为目标使用 nfs 安装环境。您可以使用 solib-absolute-prefix 将共享库的路径设置为您的 nfs 主机位置,这样您就不会在每次启动会话时都通过网络检索它们。