diff options
Diffstat (limited to 'documentation/dev-manual/common-tasks.rst')
-rw-r--r-- | documentation/dev-manual/common-tasks.rst | 47 |
1 files changed, 46 insertions, 1 deletions
diff --git a/documentation/dev-manual/common-tasks.rst b/documentation/dev-manual/common-tasks.rst index 820b8314d1..4313d905ca 100644 --- a/documentation/dev-manual/common-tasks.rst +++ b/documentation/dev-manual/common-tasks.rst | |||
@@ -10023,7 +10023,52 @@ before starting the debugging process. These extra computations place | |||
10023 | more load on the target system and can alter the characteristics of the | 10023 | more load on the target system and can alter the characteristics of the |
10024 | program being debugged. | 10024 | program being debugged. |
10025 | 10025 | ||
10026 | To help get past the previously mentioned constraints, you can use | 10026 | To help get past the previously mentioned constraints, there are two |
10027 | methods you can use: running a debuginfod server and using gdbserver. | ||
10028 | |||
10029 | Using the debuginfod server method | ||
10030 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
10031 | |||
10032 | "debuginfod" from "elfutils" is a way to distribute "debuginfo" files. | ||
10033 | Running a "debuginfod" server makes debug symbols readily available, | ||
10034 | which means you don't need to download debugging information | ||
10035 | and the binaries of the process being debugged. You can just fetch | ||
10036 | debug symbols from the server. | ||
10037 | |||
10038 | To run a debuginfod server, you need to do the following: | ||
10039 | |||
10040 | - Ensure that this variable is set in your ``local.conf`` file: | ||
10041 | :: | ||
10042 | |||
10043 | PACKAGECONFIG_pn-elfutils-native = "debuginfod libdebuginfod" | ||
10044 | |||
10045 | This :term:`PACKAGECONFIG` option enables debuginfod and libdebuginfod for | ||
10046 | "elfutils-native". | ||
10047 | |||
10048 | - Run the following commands to set up the "debuginfod" server: | ||
10049 | :: | ||
10050 | |||
10051 | $ oe-debuginfod | ||
10052 | |||
10053 | |||
10054 | To use debuginfod on the target, you need the following: | ||
10055 | |||
10056 | - Ensure that this variable is set in your ``local.conf`` file: | ||
10057 | :: | ||
10058 | |||
10059 | DEBUGINFOD_URLS = "http://localhost:8002/" | ||
10060 | |||
10061 | This :term:`DEBUGINFOD_URLS` option does the client configuration. | ||
10062 | |||
10063 | :: | ||
10064 | |||
10065 | PACKAGECONFIG_pn-gdb = "debuginfod" | ||
10066 | |||
10067 | This :term:`PACKAGECONFIG` option enables "debuginfod" for "gdb". | ||
10068 | |||
10069 | Using the gdbserver method | ||
10070 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | ||
10071 | |||
10027 | gdbserver, which runs on the remote target and does not load any | 10072 | gdbserver, which runs on the remote target and does not load any |
10028 | debugging information from the debugged process. Instead, a GDB instance | 10073 | debugging information from the debugged process. Instead, a GDB instance |
10029 | processes the debugging information that is run on a remote computer - | 10074 | processes the debugging information that is run on a remote computer - |