1. ホーム
  2. linux

[解決済み】Linux共有ライブラリがエクスポートしている関数のリストを表示するにはどうしたらいいですか?

2022-04-07 21:44:32

質問

Linuxで、共有ライブラリのエクスポートされた関数を表示したい。

これを可能にするコマンドは何ですか?

(Windowsではdependsというプログラムを使用します。)

解決方法は?

必要なものは nm とその -D というオプションがあります。

$ nm -D /usr/lib/libopenal.so.1
.
.
.
00012ea0 T alcSetThreadContext
000140f0 T alcSuspendContext
         U atanf
         U calloc
.
.
.

エクスポートされたサムボールは T . 他の共有オブジェクトから読み込む必要がある必須シンボルには U . シンボルテーブルには、関数だけでなく、エクスポートされた変数も含まれることに注意してください。

を参照してください。 nm マニュアルページ をご覧ください。