xvfb-runを使用して呼び出されたバイナリをデバッグ(gdb)する方法は?

xvfb-runを使用して呼び出されたバイナリをデバッグ(gdb)する方法は?

通常、次のように実行するバイナリがあります。

$ xvfb-run ./bin --param1 foo

ただし、GDBを使用してデバッグする必要がありますが、次のことはできません。

$ gdb --args xvfb-run ./bin --param1 foo

なぜなら"/usr/bin/xvfb-run": not in executable format: file format not recognized.

これを行う方法はありますか?例えばwxya

ティア!

答え1

xvfb-runシェルスクリプトです!したがって、すべてのxvfb-runを実行するためにgdb必要です。

gdb --args sh $(which xvfb-run) ./bin --param1 foo

しかし、これはあなたが望むものではないかもしれません!私が見ると、あなたはXサーバー自体をデバッグすることに興味がないようですXvfb。デバッグに興味があるようです./bin。むしろ

xvfb-run gdbserver localhost:9999 ./bin --param1 foo

gdbserverを起動して./binプログラムをロードし、gdbを使用して接続できます。

$ gdb ./bin
(gdb) target remote localhost:9999
(gdb) run

関連情報