1. Overview
  2. Debugging workflow
  3. Debugging workflow: CI
  4. Basic interface
  5. Call stacks
  6. Explaining dataflow
  7. Multiprocess
  8. Search box
  9. Source files
  10. Condition and print expressions
  11. Toolbox
  12. Alerts
  13. Application logs
  14. Callees
  15. View operators
  16. Notebook
  17. Instruction execution
  18. Javascript
  19. Browser UI integration
  20. Screenshots
  21. Additional views
  22. GDB
  23. System debug info
  24. Compiler issues
  25. The Pernosco vision
  26. Related work

System debug info

Developers sometimes want to delve into the execution of system libraries. In Linux the source code and debuginfo for these libraries is available in theory, but in practice obtaining the sources and debuginfo for all system libraries relevant to a debugging session is a lot of work, especially in Ubuntu. It requires identifying the relevant library packages, finding the matching debuginfo and source packages, downloading and unpacking those packages, and configuring the debugger to use them. Especially in Ubuntu, many of those steps are difficult because the relationship between binary, source and debuginfo packages is complex and poorly defined.

Pernosco fully automates all of this: for all system libraries where the distribution provides source and debuginfo, Pernosco uses it.

Major distributions such as Ubuntu and Fedora only serve debuginfo and source packages for the latest version of each library package in a particular channel. If, by the time you get around to debugging, the library package you used when reproducing the bug has been superceded by an update, the debuginfo and source for it won't be available. Therefore we maintain an archive of all versions of debuginfo and source packages relevant to our customers, to ensure that data is available no matter when a recording was created.

<< GDB Compiler issues >>