The examples below are from a Slackware current x86_64 installation (March 2026).
Cache synchronisation
Cache is up to date
If nothing has changed since the last run:
$ sbbdep sync cache /home/user/.cache/sbbdep.db cache up to date
Cache update
When packages have been installed or upgraded the cache is updated automatically:
$ sbbdep sync cache /home/user/.cache/sbbdep.db search for changes apply changes clear openssl-solibs-3.5.4-x86_64-1 index openssl-solibs-3.5.5-x86_64-1 clear openssl-3.5.4-x86_64-1 index openssl-3.5.5-x86_64-1 wait for resolving symbolic links persist new information to disk run db analyzer ---synchronisation summary: upgraded: openssl-3.5.5-x86_64-1 (was 3.5.4-x86_64-1) upgraded: openssl-solibs-3.5.5-x86_64-1 (was 3.5.4-x86_64-1)
From here on the examples use --quiet to suppress the synchronisation output.
Get dependencies
Query dependencies of a package
Query the runtime dependencies of the curl package:
$ sbbdep --quiet /var/adm/packages/curl-8.19.0-x86_64-1 aaa_glibc-solibs = 2.42-x86_64-1 | glibc = 2.42-x86_64-1 aaa_libraries = 15.1-x86_64-49 | c-ares = 1.34.6-x86_64-1 aaa_libraries = 15.1-x86_64-49 | krb5 = 1.22.2-x86_64-1 aaa_libraries = 15.1-x86_64-49 | libidn2 = 2.3.8-x86_64-1 aaa_libraries = 15.1-x86_64-49 | libpsl = 0.21.5-x86_64-1 aaa_libraries = 15.1-x86_64-49 | libssh2 = 1.11.1-x86_64-1 aaa_libraries = 15.1-x86_64-49 | zlib = 1.3.2-x86_64-1 brotli = 1.2.0-x86_64-1 nghttp2 = 1.68.0-x86_64-1 nghttp3 = 1.15.0-x86_64-1 ngtcp2 = 1.21.0-x86_64-1 openssl = 3.5.5-x86_64-1 | openssl-solibs = 3.5.5-x86_64-1
The output format is a dependency list as slapt-get expects it.
Using --short prints just the package names, comma-separated:
$ sbbdep --quiet --short /var/adm/packages/curl-8.19.0-x86_64-1 aaa_glibc-solibs | glibc, aaa_libraries | c-ares, aaa_libraries | krb5, aaa_libraries | libidn2, aaa_libraries | libpsl, aaa_libraries | libssh2, aaa_libraries | zlib, aaa_libraries | zstd, brotli, nghttp2, nghttp3, ngtcp2, openssl | openssl-solibs
Query dependencies of a file
sbbdep also accepts a single binary or library as argument:
$ sbbdep --quiet /usr/lib64/libssl.so.3 check /lib64/libssl.so.3, 64bit library (libssl.so.3) .. from package openssl-solibs-3.5.5-x86_64-1 .. from package openssl-3.5.5-x86_64-1 aaa_glibc-solibs = 2.42-x86_64-1 | glibc = 2.42-x86_64-1 openssl = 3.5.5-x86_64-1 | openssl-solibs = 3.5.5-x86_64-1 zlib = 1.3.2-x86_64-1 | aaa_libraries = 15.1-x86_64-49
Query who needs a package or file
Who needs a package
Find all packages that depend on curl:
$ sbbdep --quiet --whoneeds /var/adm/packages/curl-8.19.0-x86_64-1 NetworkManager-1.56.0-x86_64-1 cmake-4.2.3-x86_64-1 curl-8.19.0-x86_64-1 elfutils-0.194-x86_64-1 exiv2-0.28.8-x86_64-1 git-2.49.0-x86_64-1 httpd-2.4.63-x86_64-1 ...
Using --short:
$ sbbdep --quiet --whoneeds --short /var/adm/packages/curl-8.19.0-x86_64-1 NetworkManager, cmake, curl, elfutils, exiv2, git, httpd, ...
Note: curl itself appears in the list because the whoneeds query does not filter out self-references, unlike the dependency query.
Who needs a file
$ sbbdep --quiet --whoneeds /usr/lib64/libssl.so.3
/lib64/libssl.so.3 (libssl.so.3) is used from:
aaa_libraries-15.1-x86_64-49
/usr/lib64/libcups.so.2
/usr/lib64/libcurl.so.4.8.0
/usr/lib64/libldap.so.2.0.200
/usr/lib64/libssh2.so.1.0.1
alpine-2.29.9-x86_64-1
/usr/bin/alpine
/usr/bin/pico
bind-9.20.20-x86_64-1
/usr/bin/dnssec-cds
/usr/bin/dnssec-keyfromlabel
/usr/bin/dnssec-keygen
...
Getting more details with --xdl
The --xdl option (explain dynamic linked) reports dependencies at the
individual file level. It works with both dependency and whoneeds queries.
xdl dependency query
$ sbbdep --quiet --xdl /usr/lib64/libssl.so.3
check /lib64/libssl.so.3, 64bit library (libssl.so.3)
.. from package openssl-solibs-3.5.5-x86_64-1
.. from package openssl-3.5.5-x86_64-1
file /lib64/libssl.so.3 needs:
libc.so.6 found in:
/lib64/libc-2.42.so (aaa_glibc-solibs-2.42-x86_64-1 | glibc-2.42-x86_64-1)
libcrypto.so.3 found in:
/lib64/libcrypto.so.3 (openssl-3.5.5-x86_64-1 | openssl-solibs-3.5.5-x86_64-1)
libz.so.1 found in:
/lib64/libz.so.1.3.2 (aaa_libraries-15.1-x86_64-49 | zlib-1.3.2-x86_64-1)
xdl whoneeds query
$ sbbdep --quiet --whoneeds --xdl /usr/lib64/libssl.so.3
/lib64/libssl.so.3 (libssl.so.3) is used from:
aaa_libraries-15.1-x86_64-49
/usr/lib64/libcups.so.2
/usr/lib64/libcurl.so.4.8.0
/usr/lib64/libldap.so.2.0.200
/usr/lib64/libssh2.so.1.0.1
alpine-2.29.9-x86_64-1
/usr/bin/alpine
/usr/bin/pico
bind-9.20.20-x86_64-1
/usr/bin/dnssec-cds
/usr/bin/dnssec-keyfromlabel
Search for strings and files
String search
If the argument is just a string (not a file path), sbbdep searches all installed package file lists for matching filenames:
$ sbbdep --quiet openssl.cnf dovecot-2.3.21.1-x86_64-7: usr/doc/dovecot-2.3.21.1/dovecot-openssl.cnf stunnel-5.77-x86_64-1: etc/stunnel/openssl.cnf.new ppp-2.5.2-x86_64-1: etc/ppp/openssl.cnf openvpn-2.7.0-x86_64-1: usr/doc/openvpn-2.7.0/sample-keys/openssl.cnf openssl-solibs-3.5.5-x86_64-1: etc/ssl/openssl.cnf.new openssl-3.5.5-x86_64-1: etc/ssl/openssl.cnf.new dracut-110-x86_64-1: usr/lib64/dracut/modules.d/11fips/openssl.cnf
File lookup
If the argument is an existing file path, sbbdep searches by filename and also reports an exact absolute path match:
$ sbbdep --quiet /etc/ssl/openssl.cnf not a file with binary dependencies: /etc/ssl/openssl.cnf try to find information in package list: filename found in /var/adm/packages/stunnel-5.77-x86_64-1: openssl.cnf filename found in /var/adm/packages/openvpn-2.7.0-x86_64-1: openssl.cnf absolute match in /var/adm/packages/openssl-solibs-3.5.5-x86_64-1: /etc/ssl/openssl.cnf absolute match in /var/adm/packages/openssl-3.5.5-x86_64-1: /etc/ssl/openssl.cnf