2016-09-26 4 views
0

Linuxでコマンドラインユーティリティを使用して、実行可能ファイルにリンクされているものを特定することはできますか?私のプログラムにリンクされているものを正確に見るには?

私は静的または動的に特定のコードの別の部分にリンクしていません。

+0

lddを見ましたか?私はこれがあなたが望むものだと思っていますが、私はその質問を理解しているかどうかわかりません – TWhelan

+0

はい、これは私が探しているものですが、.soファイル/動的リンクのみです。 –

+0

http://stackoverflow.com/questions/1124571/get-list-of-static-libraries-used-in-an-executableには(nmを使用する)提案がありますが、これは非常に有用ではありません。 本当にそれを証明したいのであれば、問題の「特定のコード」なしで「クリーン」環境でコンパイル/リンク/実行を試みることができます。 – TWhelan

答えて

2

コメントに記載されているとおり、動的リンクの場合はlddがあります。

しかし、あなたは静的にリンクされたライブラリを見たい場合は、それが困難取得し、セットアップによって異なります あなたがソースコードを所有している場合受け入れ答え:

はあなたです友人。

もしそうでなければ、どのライブラリが静的にリンクされているのかを少なくとも知る必要があります。

大きなコードベースがあり、法的証拠を提供する必要がある場合は、black duckのようなソフトウェアを使用して、開発者が一致するライセンスでソースコードをコピーしたかどうかを確認できます。

関連する問題