0

実装が異なる同じ関数名を持つ 2 つの共有ライブラリを構築しています。

lib-xyz.so

lib-abc.so、lib-xyz.so でアプリケーションをビルドしています。アプリケーションでは、dlopen を使用して lib-abc.so をロードしています。どちらのライブラリにも、同じ名前とグローバル変数を持つ関数があります。

アプリケーションを実行しているとき lib-abc.so の関数は、独自の関数 (lib-xyz.so) ではなく、lib-xyz.so の共通関数を呼び出しています。グローバル構造の場合と同じです。この問題を解決し、共有ライブラリのアドレス空間を制限する方法を教えてください。

4

0 に答える 0