Provide an all-in-one "ids.txt" for each Fuchsia package listing the debug binary locations for binary the package might use |
|||||
Issue descriptionWhen building each package we already scan the binaries to identify library dependencies, so we can additionally grab the build-Id from the "readelf" output, and note it against each binary, to emit a single unified ids.txt file for each package. This will contain id->path mappings for all binaries in the package, in any dependency packages, and in the SDK, so that it can be passed to e.g. zxdb to enable symbolization.
,
Oct 4
Kevin, could you take a look at providing this?
,
Oct 10
The requirements are very different depending on how this will be used. Would it be for debugging local Chromium builds, or CIPD prebuilts? From what I can tell, the former would just require some tweaks to zxdb so that it can use multiple ids.txt files. zxdb would index the union of Fuchsia and Chrome's ids.txts. Supporting CIPD prebuilt debugging is a more involved infra task, since we'd need to produce archives containing the symbol data, either as unstripped binaries, or preferably as extracted symbol tables if possible. It doesn't look like zxdb supports standalone symbol data right now?
,
Oct 10
Hmm, the stripped binary is ~100MB whereas the unstripped binary is 4.4GB. Huge! Fuchsia should make the download an opt-in step, probably as an argument to fx set. And if it's opt-in, perhaps being clever about eliding the redundant executable portions isn't worth it, given that the optimization would only reduce the transfer & storage amount by about 3%.
,
Oct 11
This patch: https://fuchsia-review.googlesource.com/c/garnet/+/211093 will make it possible to run "zxdb -s <path>" where <path> is an unstripped binary, directory (it will find all elf files in the dir), or another ids.txt file. This is separate than actually getting the symbols for the binary though.
,
Oct 11
Nice. I think the directory mode will be very helpful.
,
Oct 12
We can create a CIPD archive containing the unstripped executables and libraries at the same top level. Then we'd just have to point zxdb at the directory and let it do the indexing for us.
,
Jan 15
Pretty busy with other stuff - unassigning in case someone else wants to pick this up.
,
Jan 15
|
|||||
►
Sign in to add a comment |
|||||
Comment 1 by w...@chromium.org
, Sep 20