# Configure debug symbols

You need debug symbols to parse coredumps. By design, Yocto Project compiles a package and splits it into several packages. For example, if the `hello_0.1.bb` file compiles the `hello.cpp` file, it generates several packages.

The following table lists the packages that are relevant to the coredump.

Table: Packages required for parsing coredumps

| Package | Description |
| --- | --- |
| `hello_0.1-r0_armv8-2a.rpm` | This package includes a stripped executable and is the only package included in the device image. |
| `hello-dbg_0.1-r0_armv8-2a.rpm` | This package includes the debug symbols and is never packed in the image. The debug package (`-dbg`) significantly increases the image size, causing problems when including it. Apart from debugging, this package has no runtime value. Therefore, as a strategy, Yocto doesn't include any `-dbg` package in the image. |
| `hello-dev_0.1-r0_armv8-2a.rpm` | This package includes the exported headers and libraries that dependent modules use during compilation. |

According to Yocto Project standards, the build location path `tmp/deploy/rpm/armv8-2a` stores the debug symbols. For example, `tqftpserv-dbg_0.0+0+de42697a24-r0_armv8-2a.rpm` package includes the debug symbols for the `/usr/bin/tqftpserv` directory.

To push the debug symbols to the device, do the following using SSH:

1. Remount the rootfs.

mount -o rw,remount /
        Copy to clipboard
2. Using the `scp` command, push the debug symbols (`tqftpserv-dbg_0.0+0+de42697a24-r0_armv8-2a.rpm`) to the device at any available partition such as `/data/`.

chmod 777 /data/tqftpserv-dbg_0.0+0+de42697a24-r0_armv8-2a.rpm
        Copy to clipboard

cd data
        Copy to clipboard
3. Install debug symbols on the device.

dnf install tqftpserv-dbg_0.0+0+de42697a24-r0_armv8-2a.rpm
        Copy to clipboard

    After you push the debug symbols to the device, the system saves the symbols at the path of the executable directory in the `.debug` directory. For example, if the executable is in the `/usr/bin/tqftpserv` directory, then the system saves the debug symbols in the `/usr/bin/.debug` directory.
4. To identify the debug symbols that are available on the device, run the following commands:

cd /usr/bin/.debug
        Copy to clipboard

ls
        Copy to clipboard

**Sample output:**

gencat   getent  locale  pcprofiledump  sprof      zdump

getconf  iconv   makedb  pldd   tqftpserv

Last Published: May 14, 2026

[Previous Topic
Debug with user-space logs](https://docs.qualcomm.com/bundle/publicresource/80-80022-12/topics/userspace_logs.md) [Next Topic
Reboot the system](https://docs.qualcomm.com/bundle/publicresource/80-80022-12/topics/reboot_device_from_userspace.md)