I can't imagine why I've not seen this before, but ldconfig fails to recognize a library without the .so extension:
# ldconfig -l -D libdnet.1
ldconfig: uClibc version
ldconfig: ./libdnet.1 is not a shared library
# ldconfig -p|grep dnet
# ln libdnet.1 libdnet.so
# ldconfig -l -D libdnet.so
ldconfig: uClibc version
libdnet.so => libdnet.so
# ldconfig
# ldconfig -p|grep dnet
libdnet.so (libc6) => /usr/local/lib/libdnet.so
libdnet is not processed by ldconfig unless I create a link with the .so extension. I'm sure it worked before, but I cannot get it to work any more without the link. Any ideas? Did I build libdnet wrong somehow (./configure && make && make install)? The workaround is sufficient, but I would think ldconfig shouldn't fail like that.
Note: libdnet is in /usr/local/lib in my example above because I rebuilt it, but the behavior is identical with the extension in the repository that places it in /lib.
EDIT: Never mind. It turns out that for whatever reason the file must be located in /lib (I had forgotten why I put it there originally), so I created a usr/local/tce.installed/libdnet script which places a symbolic link there and keeps the extension PPI compliant.