[Linux] Linux プラットフォームで SO シンボル テーブルを表示する方法

Linux プラットフォームでは、nmこのコマンド.so共有ライブラリ (ダイナミック リンク ライブラリまたはファイルとも呼ばれる) 内のシンボル (関数または変数) のリストを表示できます。nmコマンドの構文は次のとおりです。

nm [options] file...

このうち、 はoptionsオプションを示し、一般的に使用されるオプションは-D(ダイナミック シンボル テーブルの表示)、-C(C++ シンボル名の表示)、-g(デバッグ シンボル テーブルの表示) などで、file表示する共有ライブラリ ファイルの名前を示します。絶対パスまたは相対パス。

たとえば、libtest.soという名前の、次のコマンドを使用します。

nm -D libtest.so

このコマンドは、関数と変数、それらのアドレスと型を含む、共有ライブラリ内のすべてのシンボルのリストを出力します。共有ライブラリ内のシンボルは、名前の競合やシンボル リークなどの問題を回避するために名前変更または非表示にされる場合があるため、共有ライブラリ内のシンボルを管理するには特定の仕様に従う必要があることに注意してください。

おすすめ

転載: blog.csdn.net/qq_37286579/article/details/130566621