2011-01-22 18 views
0

GNU/Linux(man)のプログラムstripでは、オブジェクトファイルや実行ファイルからシンボルを破棄することができます。これにより、ファイルサイズが小さくなります。シンボルを破棄する際の短所は何ですか?

私の質問はシンボルを破棄する際のトレードオフですか?

答えて

5

メモリ内に格納されている変数や関数がわからなくなったため、デバッグが非常に困難になりました。

+0

実行可能ファイルにシンボルが含まれていないと、死後のコアダンプ解析が難しくなります。 –

+0

コアダンプを解析したり実行ファイルをデバッグしたりしたくない場合は、単にシンボルを破棄して領域を節約できますか? – Lukas

+3

完全に同じライブラリと設定でバイナリの新しいコピーを再コンパイルし、それを使ってコアまたは実行可能な実行ファイルをデバッグすることができます。私は 'screen'セッションが保存されていない重要なデータにぶら下がってしまったときにこれを一回行いました。同じ画面バイナリを作成し、gdbで実行中のプロセスをアタッチし、無限ループに詰め込まれた変数の値を変更するために使用しました。 –

関連する問題