「Debuginfod」の版間の差分
(セクション見出しを訳出) |
(一部翻訳) |
||
1行目: | 1行目: | ||
[[Category:パッケージ開発]] |
[[Category:パッケージ開発]] |
||
+ | [[en:Debuginfod]] |
||
+ | [[ru:Debuginfod]] |
||
{{Related articles start}} |
{{Related articles start}} |
||
{{Related|デバッグ/トレースを取得}} |
{{Related|デバッグ/トレースを取得}} |
||
{{Related articles end}} |
{{Related articles end}} |
||
− | [https://sourceware.org/elfutils/Debuginfod.html Debuginfod] |
+ | [https://sourceware.org/elfutils/Debuginfod.html Debuginfod] は、HTTP API 経由でデバッグ情報を提供するサービスです。 |
== インストール == |
== インストール == |
||
+ | {{ic|DEBUGINFOD_URLS}} [[環境変数]] が存在する場合、{{Pkg|gdb}} は自動的にデバッグ ファイルのダウンロードを試みます。 |
||
− | {{Pkg|debuginfod}} を [[インストール]] します。 |
||
+ | |||
+ | {{Pkg|gdb}} の依存関係である {{Pkg|libelf}} は、{{ic|/etc/profile.d/debuginfod.sh}} および {{ic|/etc/profile.d/debuginfod に同梱されています.csh}} スクリプトはログイン時に変数を設定するため、追加のパッケージをインストールする必要はありません。 |
||
+ | |||
+ | オプションで、{{man|1|debuginfod-find}} ユーティリティを提供する {{Pkg|debuginfod}} パッケージを [[インストール]] することができます。このパッケージは、{{Pkg|delve}} での debuginfod サポートに必要です。 |
||
== 使い方 == |
== 使い方 == |
||
+ | {{Expansion|Explain how {{ic|DEBUGINFOD_URLS}} is set from {{ic|/etc/debuginfod/*.urls}}.}} |
||
− | {{Note|''debuginfod'' after version {{ic|0.186-3}} adds {{ic|DEBUGINFOD_URLS}} to the environment on login.}} |
||
+ | The tooling looks for debug symbols on the debuginfod servers specified in the {{ic|DEBUGINFOD_URLS}} [[environment variable]]. The value is a string of a space separated URLs. |
||
− | Set the [[環境変数]] which tells the tooling where to look for debug symbols: |
||
+ | For example: |
||
− | export DEBUGINFOD_URLS="<nowiki>https://debuginfod.archlinux.org/</nowiki>" |
||
− | + | DEBUGINFOD_URLS="<nowiki>https://debuginfod.archlinux.org/</nowiki>" |
|
+ | |||
+ | {{Tip|One can also use {{ic|<nowiki>https://debuginfod.elfutils.org/</nowiki>}} which works as a federated server and queries all available debuginfod servers.}} |
||
+ | |||
+ | {{Expansion|What data is actually fetched? Does it download a [[Debugging/Getting traces#Install debug packages|debug package]] and extract it to the user's home directory?}} |
||
+ | |||
+ | {{Merge|Debugging/Getting traces#Debuginfod|Duplicate content.}} |
||
Now a debugger can fetch debug symbols without having to install the appropriate debug package. |
Now a debugger can fetch debug symbols without having to install the appropriate debug package. |
||
29行目: | 41行目: | ||
(gdb) |
(gdb) |
||
}} |
}} |
||
+ | |||
+ | You can also do for example: |
||
+ | |||
+ | # coredumpctl gdb |
||
+ | |||
+ | And then inside gdb: |
||
+ | |||
+ | bt full |
||
+ | |||
+ | and you will have the debug-symbols of the last crashed app in your system. |
||
See {{man|1|debuginfod-find}} for usage. |
See {{man|1|debuginfod-find}} for usage. |
2023年10月15日 (日) 15:38時点における版
関連記事
Debuginfod は、HTTP API 経由でデバッグ情報を提供するサービスです。
インストール
DEBUGINFOD_URLS
環境変数 が存在する場合、gdb は自動的にデバッグ ファイルのダウンロードを試みます。
gdb の依存関係である libelf は、/etc/profile.d/debuginfod.sh
および /etc/profile.d/debuginfod に同梱されています.csh
スクリプトはログイン時に変数を設定するため、追加のパッケージをインストールする必要はありません。
オプションで、debuginfod-find(1) ユーティリティを提供する debuginfod パッケージを インストール することができます。このパッケージは、delve での debuginfod サポートに必要です。
使い方
The tooling looks for debug symbols on the debuginfod servers specified in the DEBUGINFOD_URLS
environment variable. The value is a string of a space separated URLs.
For example:
DEBUGINFOD_URLS="https://debuginfod.archlinux.org/"
Now a debugger can fetch debug symbols without having to install the appropriate debug package.
$ gdb /usr/bin/i3
[...] Reading symbols from /usr/bin/i3... Downloading 1.56 MB separate debug info for /usr/bin/i3 Reading symbols from /home/user/.cache/debuginfod_client/29129d26dbe557d2b56daf90327f64f527304dc1/debuginfo... (gdb)
You can also do for example:
# coredumpctl gdb
And then inside gdb:
bt full
and you will have the debug-symbols of the last crashed app in your system.
See debuginfod-find(1) for usage.
デバッガのサポート
Several debuggers support utilizing debuginfod to find debug symbol and source code listing.
Package | Status | Notes |
---|---|---|
gdb | Supported | |
delve | Partial Support | Supports debug symbols, missing source listing |
KDE Crash Report | Supported |