「Debuginfod」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(リンクを日本語版に変更)
(→‎使い方: 同期)
 
(2人の利用者による、間の4版が非表示)
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] is a service providing debug information over a HTTP API.
+
[https://sourceware.org/elfutils/Debuginfod.html Debuginfod] は、HTTP API 経由でデバッグ情報を提供するサービスです。
   
== Installation ==
+
== インストール ==
   
  +
{{ic|DEBUGINFOD_URLS}} [[環境変数]] が存在する場合、{{Pkg|gdb}} は自動的にデバッグ ファイルのダウンロードを試みます。
{{Pkg|debuginfod}} を [[インストール]] します。
 
   
  +
{{Pkg|gdb}} の依存関係である {{Pkg|libelf}} は、{{ic|/etc/profile.d/debuginfod.sh}} および {{ic|/etc/profile.d/debuginfod に同梱されています.csh}} スクリプトはログイン時に変数を設定するため、追加のパッケージをインストールする必要はありません。
== Usage ==
 
   
  +
オプションで、{{man|1|debuginfod-find}} ユーティリティを提供する {{Pkg|debuginfod}} パッケージを [[インストール]] することができます。このパッケージは、{{Pkg|delve}} での debuginfod サポートに必要です。
{{Note|''debuginfod'' after version {{ic|0.186-3}} adds {{ic|DEBUGINFOD_URLS}} to the environment on login.}}
 
   
  +
== 使用方法 ==
Set the [[環境変数]] which tells the tooling where to look for debug symbols:
 
   
  +
{{Tip|''gdb'' での使用法については、[[デバッグ/トレースを取得#トレースの取得]] を参照してください。}}
export DEBUGINFOD_URLS="<nowiki>https://debuginfod.archlinux.org/</nowiki>"
 
   
  +
このツールは、{{ic|DEBUGINFOD_URLS}} [[環境変数]] で指定された debuginfod サーバー上でデバッグシンボルを検索します。値は、スペースで区切られた URL の文字列です。
One can also use {{ic|<nowiki>https://debuginfod.elfutils.org/</nowiki>}} which works as a federated server and queries all available debuginfod servers.
 
   
  +
例えば:
Now a debugger can fetch debug symbols without having to install the appropriate debug package.
 
   
  +
DEBUGINFOD_URLS="<nowiki>https://debuginfod.archlinux.org/</nowiki>"
{{hc|$ gdb /usr/bin/i3|
 
  +
[...]
 
  +
{{Tip|{{ic|<nowiki>https://debuginfod.elfutils.org/</nowiki>}} を使用することもできます。これはフェデレーテッド・サーバーとして機能し、利用可能なすべての debuginfod サーバーをクエリします。}}
Reading symbols from /usr/bin/i3...
 
  +
Downloading 1.56 MB separate debug info for /usr/bin/i3
 
  +
使用法については、{{man|1|debuginfod-find}} を参照してください。
Reading symbols from /home/user/.cache/debuginfod_client/29129d26dbe557d2b56daf90327f64f527304dc1/debuginfo...
 
  +
(gdb)
 
  +
=== マニュアルダウンロード ===
  +
  +
{{Pkg|zstd}} のデバッグシンボルといくつかのソースファイルを手動で取得したい場合は、''debuginfod-find'' を利用できます:
  +
  +
{{hc|$ debuginfod-find debuginfo /usr/bin/zstd|
  +
/home/user/.cache/debuginfod_client/70e1b456c5813658df6436a3deb71812e75a0267/debuginfo
 
}}
 
}}
   
See {{man|1|debuginfod-find}} for usage.
+
{{hc|$ debuginfod-find source /usr/bin/zstd /usr/src/debug/zstd-1.5.2/programs/fileio.c|
  +
/home/user/.cache/debuginfod_client/70e1b456c5813658df6436a3deb71812e75a0267/source##usr##src##debug##zstd-1.5.2##programs##fileio.c}}
   
  +
== デバッガのサポート ==
== Debugger support ==
 
   
  +
いくつかのデバッガは、デバッグシンボルとソースコードリストを検索するための debuginfod の利用をサポートしています。
Several debuggers support utilizing debuginfod to find debug symbol and source code listing.
 
   
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Package !! Status !! Notes
+
! パッケージ !! ステータス !! ノート
  +
|-
  +
| {{Pkg|gdb}} || {{G|サポートされています}} ||
 
|-
 
|-
| {{Pkg|gdb}} || {{G|Supported}} ||
+
| {{Pkg|delve}} || {{G|サポートされています}} ||
 
|-
 
|-
  +
|KDE Crash Report || {{G|サポートされています}} ||
| {{Pkg|delve}} || {{Y|Partial Support}} || Supports debug symbols, missing [https://github.com/go-delve/delve/pull/2885 source listing]
 
 
|-
 
|-
|KDE Crash Report || {{G|Supported}} ||
+
| {{Pkg|valgrind}} || {{G|サポートされています}} ||
 
|}
 
|}
   
== See also ==
+
== 参照 ==
   
 
* [https://sourceware.org/elfutils/Debuginfod.html Homepage]
 
* [https://sourceware.org/elfutils/Debuginfod.html Homepage]

2024年3月22日 (金) 20:17時点における最新版

関連記事

Debuginfod は、HTTP API 経由でデバッグ情報を提供するサービスです。

インストール

DEBUGINFOD_URLS 環境変数 が存在する場合、gdb は自動的にデバッグ ファイルのダウンロードを試みます。

gdb の依存関係である libelf は、/etc/profile.d/debuginfod.sh および /etc/profile.d/debuginfod に同梱されています.csh スクリプトはログイン時に変数を設定するため、追加のパッケージをインストールする必要はありません。

オプションで、debuginfod-find(1) ユーティリティを提供する debuginfod パッケージを インストール することができます。このパッケージは、delve での debuginfod サポートに必要です。

使用方法

ヒント: gdb での使用法については、デバッグ/トレースを取得#トレースの取得 を参照してください。

このツールは、DEBUGINFOD_URLS 環境変数 で指定された debuginfod サーバー上でデバッグシンボルを検索します。値は、スペースで区切られた URL の文字列です。

例えば:

DEBUGINFOD_URLS="https://debuginfod.archlinux.org/"
ヒント: https://debuginfod.elfutils.org/ を使用することもできます。これはフェデレーテッド・サーバーとして機能し、利用可能なすべての debuginfod サーバーをクエリします。

使用法については、debuginfod-find(1) を参照してください。

マニュアルダウンロード

zstd のデバッグシンボルといくつかのソースファイルを手動で取得したい場合は、debuginfod-find を利用できます:

$ debuginfod-find debuginfo /usr/bin/zstd
/home/user/.cache/debuginfod_client/70e1b456c5813658df6436a3deb71812e75a0267/debuginfo
$ debuginfod-find source /usr/bin/zstd /usr/src/debug/zstd-1.5.2/programs/fileio.c
/home/user/.cache/debuginfod_client/70e1b456c5813658df6436a3deb71812e75a0267/source##usr##src##debug##zstd-1.5.2##programs##fileio.c

デバッガのサポート

いくつかのデバッガは、デバッグシンボルとソースコードリストを検索するための debuginfod の利用をサポートしています。

パッケージ ステータス ノート
gdb サポートされています
delve サポートされています
KDE Crash Report サポートされています
valgrind サポートされています

参照