実行時:
sudo /sbin/ldconfig
次のエラーが表示されます。
/sbin/ldconfig: /usr/local/lib/ is not a symbolic link
コマンドを実行するfileと、以下が表示されます。
file /usr/local/lib/
/usr/local/lib/: directory
内部/usr/local/lib/には、私が使用する 3 つのライブラリがあります。ここではlib1、 、lib2と呼びますlib3。
さて、lddバイナリで を実行すると、次の結果になります。
lib1.so => not found
lib2.so => not found
lib3.so => /usr/local/lib/lib3.so (0x00216000)
しかし、それらはすべて と同じフォルダーにあります/usr/local/lib/{lib1,lib2,lib3}.so。
を実行するたびldconfigに、同じエラーが表示されます。
/usr/local/lib/ is not a symbolic link
/usr/local/libで2回宣言する必要があると思いまし/etc/ld.conf.d/*.confたが、そうではありません:
sudo egrep '\/usr\/local' /etc/ld.so.conf.d/*
projectA.conf.old:/usr/local/projectA/lib
local.conf:/usr/local/lib
ld.so.confのみを含む/etc/ld.so.conf.d/*.confため、これ*.oldは処理されず、 を参照し/usr/local/projectA/libます。
lib1 と lib2 をすべて削除しようとしてしばらくすると (ある時点でバイナリのフォルダーでテストしました)、同じエラーが発生します。