一連の静的ライブラリを共有ライブラリに変換していますが、共有ライブラリを正常に作成できました。静的ライブラリとリンクするとライブラリに未解決のシンボルが含まれる可能性がありますが、共有ライブラリの場合はそうではないため、問題はexeにあります。共有ライブラリ内のすべてのシンボルが解決されるはずです。
例: PROG1 は LIB1.a を呼び出します LIB2.a を呼び出します PROG1 が LIB1.a を呼び出しても LIB2.a を呼び出さないため、PROG1 のメイク ファイルに LIB2.a を含める必要はありません。未解決のまま。
変換後 LIB1.so と LIB2.so の両方を PROG1 のメイクファイルに含める必要があります。LIB2.so を含めると、LIB1.so のリンケージの問題はほとんど解決されませんが、LIB2.so を含めることで新しい問題が発生します (LIB3.so に依存する可能性があるため)。
SO共有ライブラリのすべての依存ライブラリを見つける方法はありますか?
ldd を使用してみましたが、何も出力されません。
私の分析が間違っていたら教えてください。