「Debuginfod」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(一部翻訳)
(→‎使い方: 翻訳)
18行目: 18行目:
 
== 使い方 ==
 
== 使い方 ==
   
  +
このツールは、{{ic|DEBUGINFOD_URLS}} [[環境変数]] で指定された debuginfod サーバー上でデバッグシンボルを検索します。値は、スペースで区切られた URL の文字列です。
{{Expansion|Explain how {{ic|DEBUGINFOD_URLS}} is set from {{ic|/etc/debuginfod/*.urls}}.}}
 
   
  +
例えば:
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.
 
 
For example:
 
   
 
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.}}
+
{{Tip|{{ic|<nowiki>https://debuginfod.elfutils.org/</nowiki>}} を使用することもできます。これはフェデレーテッド・サーバーとして機能し、利用可能なすべての debuginfod サーバーをクエリします。}}
 
{{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.
 
   
 
{{hc|$ gdb /usr/bin/i3|
 
{{hc|$ gdb /usr/bin/i3|
42行目: 36行目:
 
}}
 
}}
   
  +
たとえば次のようにすることもできます。
You can also do for example:
 
   
 
# coredumpctl gdb
 
# coredumpctl gdb
   
  +
そして、gdb 内では次のようになります。
And then inside gdb:
 
   
 
bt full
 
bt full
   
  +
システム内で最後にクラッシュしたアプリのデバッグシンボルが表示されます。
and you will have the debug-symbols of the last crashed app in your system.
 
   
See {{man|1|debuginfod-find}} for usage.
+
使用法については、{{man|1|debuginfod-find}} を参照してください。
   
 
== デバッガのサポート ==
 
== デバッガのサポート ==

2023年10月15日 (日) 18:55時点における版

関連記事

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

インストール

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

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

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

使い方

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

例えば:

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

デバッガは、適切なデバッグパッケージをインストールしなくても、デバッグシンボルをフェッチできるようになりました。

$ 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)

たとえば次のようにすることもできます。

# coredumpctl gdb

そして、gdb 内では次のようになります。

bt full

システム内で最後にクラッシュしたアプリのデバッグシンボルが表示されます。

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

デバッガのサポート

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

参照