libdnet を使用するプログラム (Snort) を実行しようとしていますが、それが見つからず、次のように出力されます。
Snort: 共有ライブラリの読み込み中にエラーが発生しました: libdnet.1: 共有オブジェクト ファイルを開けません: そのようなファイルやディレクトリはありません
ldconfig
これで、ライブラリへのパスを実行して に入れ、ライブラリを追加する必要があることがわかりました/etc/ld.so.conf
。libdnet は にあるため、既にそのディレクトリをカバーしているため/usr/local/lib
、変更する必要はありません。そのため、次のコマンドを実行して出力をトレースしたところ、ライブラリがロードされていないことに気付きました。ld.so.conf
ldconfig -v
.so
どうやら ldconfigは、名前にどこかがありlibdnet.1
、パターンと一致しないファイルのみをロードします。
ソースから libdnet をビルドし、./configure; make; make install
コマンドを使用してインストールしました。必要がない限り、パッケージマネージャーを使用してインストールしたくありません。私は何をすべきか?
編集:ここでは、ライブラリはパターンと一致する必要がある
と書かれていますが、ライブラリの名前を変更することはできません。私はそれを自分のアプリで作成したり、使用したりしていません。名前を変更するとロードされますが、Snort はnotを探していると思います。lib*.so*
libdnet.1
libdnet.so.1