[Android]共有ライブラリ(.soファイル)で使っているライブラリのバージョンを確認する

Androidアプリ開発で、共有ライブラリ内でOpenSSLを使っていたんだけど、OpenSSLを新しいバージョンにする必要が出てきたときの話。

確か、この問題だったと思う。

で、OpenSSLをバージョンアップしたときに、バージョンが本当に更新されているかを確認したかったので、確認方法を調べた。

  • viコマンドで開いて、文字でfindした
    たくさん引っ掛かる。いずれ見つかると思うが、もっと工夫が必要っぽい。
  • lddコマンドでやってみた
    Dynamic Linkingだけでてきた。
  • stringsコマンドでやってみた
    viを使ってやるより見つけやすかった。

でも確か、昔、他のちゃんとした調べ方を知っていたような気がする。。。

補足

  • strings : バイナリファイルの表示可能な文字列を表示する
    正確にはmanコマンドで確認してください。

  • strings – コマンド (プログラム) の説明 – Linux コマンド集 一覧表
    http://kazmax.zpp.jp/cmd/s/strings.1.html

また、stringsコマンドは、Cygwinに入ってなかったので、busyboxをインストールして使えるようにしました。

busybox strings filename.so

コメント

タイトルとURLをコピーしました