solib-absolute-prefix vs. solib-Suche-Pfad in der GDB
Lese ich die Beschreibung der beiden, aber ich weiß noch nicht verstehen, den Unterschied. Kann mir jemand helfen, verstehe die Unterschiede?
set solib-absolute-prefix -
Specifies the local directory that contains copies of target libraries in the
corresponding subdirectories. This option is useful when debugging with gdbserver.
.
set solib-search-path command -
Specifies directories where GDB will search for shared libraries with symbols. This option
is useful when debugging with gdbserver.
Dank.
InformationsquelleAutor ransh | 2014-07-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Formulierung ist ziemlich unklar 🙁
Davon ausgehen, dass Ihre Gegner geladen
/usr/lib/libfoo.so
ist, und dass auf dem host (wo GDB ausgeführt wird), müssen Sie eine Kopie des gesamten Ziel-Baum in/tmp/host
. Das heißt, eine Kopie des Ziels/usr/lib/libfoo.so
finden Sie auf der host in/tmp/host/usr/lib/libfoo.so
.Dann die folgenden Befehle sind fast äquivalent:
Nun überlegen, was passiert, wenn Sie auch
/usr/local/lib/libbar.so
am Ziel, und eine Kopie davon in/tmp/host/usr/local/lib/libbar.so
.Den
solib-absolute-prefix
wie oben ist immer noch gut zu findenlibbar.so
, abersolib-search-path
müssten geändert werden, etwa so:Zusammenfassen, wenn Sie haben gesamte Ziel-Baum, unter einem einzigen host
$ROOT
, dann setzen Sie einfachsolib-absolute-prefix
zu$ROOT
und Sie sollte gut sein.Aber wenn Sie haben zu "montieren" target Pfade aus mehreren nicht zusammenhängenden Bäume, dann
solib-search-path
mit mehrere Pfade GDB, noch richtige Bibliotheken.InformationsquelleAutor Employed Russian