ここでこの問題を検索し、同様の質問をいくつか見つけましたが、解決策がうまくいきません。これが私の問題です。私のアプリケーションは、openldap-2.3 の共有ライブラリでコンパイルしています。Openldap には /usr/lib/libldap-2.3.so.0.2.31 にリンクされた /usr/lib/libldap-2.3.so.0 があります。-lldap
libldap-2.3.so.0 ファイルをアプリケーションにリンクするオプションを gccに渡しました。
しかし、libldap.so のような特定の名前でリンクしたいのです。今後、開発システムでopenldapバージョンを 2.4 に変更すると、libldap-2.4.so.XXX バージョンにリンクされます。
では、アプリケーションを特定の名前にリンクして、常に libldap.so のような同じ名前を検索するにはどうすればよいでしょうか。
注: /usr/lib/libldap-2.3.so.0 のソフトリンクを /usr/lib/libldap.so として作成し、ライブラリ名/usr/lib/libldap.so
をコンパイラに渡し-l
ます。アプリケーションはリンク エラーなしで正常にコンパイルされますが、同じ libldap が表示されます。 -2.3.so.0 依存関係。