Nut-scanner points towards incorrect lib symlinks

# nut-scanner throws the following errors:

Cannot load USB library (libusb-1.0.so) : file not found. USB search disabled.
Cannot load SNMP library (libnetsnmp.so) : file not found. SNMP search disabled.
Cannot load AVAHI library (libavahi-client.so) : file not found. AVAHI search disabled.
Cannot load NUT library (libupsclient.so) : file not found. NUT search disabled.
No start IP, skipping NUT bus (old connect method)

# ls -la /usr/lib/libusb* shows the following symlink:

/usr/lib/libusb-1.0.so.0 -> libusb-1.0.so.0.4.0
/usr/lib/libusb-1.0.so.0.4.0

The workaround by manually creating a symlink from libusb-1.0.so.0.4.0 to libusb-1.0.so results in a working nut-scanner.

So libusb was updated from 1.0.26 to 1.0.27 in August 2024 back in Core Update 188 and this updated the libusb library from 1.0.so.0.3.0 to 1.0.so.0.4.0

It is now clear that nut has a dependency on libusb but it was not shipped after libusb was updated as that dependency was not recognised or know about.

Clearly not many people have been using nut with Core Updates after CU188 as your finding is the first notification of this issue.

New CU installations after CU188 would work fine with nut, it is only updated versions from CU188 or earlier that will have the problem.

When I am back at home I will do a patch submission to ship nut so the library linkage gets updated.

Bug has been raised for this so that it is recorded and not forgotten about.

https://bugzilla.ipfire.org/show_bug.cgi?id=13840

1 Like