# Debug symbols for binary packages



## _martin (Oct 2, 2022)

Does FreeBSD support download of debugging symbols for binary packages installed via pkg? I can't find any information about that nor can I find any packages with those symbols. I'm heavy ports user but recently I wanted to debug something quickly and wanted to avoid building in myself from ports.


----------



## Erichans (Oct 2, 2022)

Perhaps I'm missing something but if the pgk in question isn't compiled with the appropriate setting for debug info, it looks like you're out of luck:
Debugging Ports


----------



## _martin (Oct 2, 2022)

Note we are talking about binary packages, i.e. packages provided by FreeBSD. Somebody had to compile them at some point. You can strip them (symbols) easily when needed. I was just surprised FreeBSD doesn't ship them, so it seems. It's similar to its base/kernel debug symbols which can be installed separately.

I use ports for pretty much all my packages for many years. But yesterday I wanted to debug something in VM where I just really wanted to focus on a problem and didn't want to waste time on compilation (somewhat big port). Downloading symbols as part of the /additional/ package is very convenient.

I was hoping I'm wrong and these symbols are actually available.


----------



## Erichans (Oct 2, 2022)

Yes, binary packages. If the correspondent info with symbols is not being generated at compile time (from the symbol table generated by the parsing phase during compilation) of the package, the symbols cannot be retrieved and the correspondence of those symbols with the actual addresses in the binaries isn't available.

From Debugging Ports I conclude that usually/always? packages for the FreeBSD package repositories aren't built with a setting to generate symbols. (I couldn't find any other info to the contrary as well.) I think if generating debug symbols were to be "the default" for all packages then, that would amount to an extra effort and use of space that would likely be not effective in relation to the (small) group of users/debuggers that would want to debug an installed pkg that was installed directly from a FreeBSD package repository.

I'm not that familiar with Open Source Software in general but I don't think that standard pre-built packages/binaries come with symbol info included.


----------



## _martin (Oct 2, 2022)

I understand how debug symbols are generated. FreeBSD provides these for base and kernel. I'm just wondering why not for ports too. Yeah, probably due to extra effort/space to store those.

In general there's no reason to provide these to regular users (waste of disk space). To compare it to Linux: distributions provide debug symbols as a separate package. If you need it you can download it. That's very convenient.

I just wanted to know if I maybe missed something and these symbols are somewhere actually. It seems not. So I will actually have to let the somewhat big package (qt5) be built from ports.


----------

