2017-10-06 71 views
1

我使用CLion爲了連接遠程機器上的遠程gdbserver(通過ssh端口轉發)。gdb遠程調試緩存遠程目標

I'T工作得很好,除了一兩件事,它的下載每一次我連接到gdbserver所有鏈接的依賴

enter image description here

所以,我查不出有任何傳遞國旗在gdb remote緩存這樣的文件。

回答

1

如果你的問題沒有緩存庫,但實際上加快了GDB啓動過程,你可以設置solib-absolute-prefix到你的位置包含所有共享庫的主機。 如果您在主機上爲目標使用nfs加載的環境。您可以使用solib-absolute前綴將共享庫的路徑設置爲您的nfs主機位置,這樣您每次啓動會話時都不會通過網絡檢索它們。

+0

是的我正在使用sshfs作爲掛載目錄。所以你建議'set sysroot'(set solib-absolute-prefix命令是set sysroot的別名)加載到安裝的文件夾,以便通過nfs/sshfs緩存進程加速,對吧?或爲什麼我不檢索每一次? –

+0

我只是說,從主機而不是目標加載庫應該更快,並且通過使用nfs文件夾,您可以擺脫Tom Tromey強調的潛在同步問題,因爲您的主機和目標使用相同的位置來加載庫。 –

+0

帶有'transform_symlinks'的sshfs絕對有訣竅。謝謝! –

1

有沒有內置的方式來做到這一點。

你可以通過手工複製所有需要的文件一次,然後使用set sysroot。但是,這有點容易出錯,因爲您必須記得隨時隨地進行同步更改。

另一個想法是設置某種緩存遠程文件系統。 (但我不知道是否存在這樣一個罐頭的問題。)