2

RTLD_NOWで dlopen() を使用して、共有ライブラリの読み込みを遅らせることができます。ただし、ライブラリが動的に読み込まれると、dlsym を使用して各シンボルを個別に読み込む必要があります。

私のライブラリには多数の API が含まれているため、それらすべてに対して dlsym を呼び出したくありません。API を通常のロードタイム リンク (dlsym を必要とせずに API を呼び出すだけ) と同じように動作させる方法はありますか?

4

3 に答える 3

0

おそらくもう関連性はありませんが、コードに通常の関数のように見えるが内部的に呼び出すスタブdlopenを提供する Windows DLL インポート ライブラリの類似物を探しています。dlsym

Linux はすぐに使用できるインポート ライブラリを提供していませんが、カスタム スクリプトを介して手動で生成するか、Implib.soツールを使用してこれを完全に自動的に行うことができます。

于 2017-11-29T09:50:00.610 に答える