#!/bin/bash
-# Copyright (C) 2008 - 2014 Steve Youngs
+# Copyright (C) 2008 - 2021 Steve Youngs
# Author: Steve Youngs <steve@sxemacs.org>
# Maintainer: Steve Youngs <steve@sxemacs.org>
# Created: <2008-03-10>
-# Time-stamp: <Monday Mar 3, 2014 17:26:05 steve>
+# Time-stamp: <Wednesday Jan 20, 2021 14:07:28 steve>
# Homepage: N/A
# Keywords: utils package-management
lib_dirs=(/usr/lib /usr/X11R6/lib /lib)
# bastard library directories...
-#lib_dirs=(\
-# /usr/lib \
-# /usr/X11R6/lib \
-# /lib \
-# /opt/qt/lib \
-# /opt/kde/lib)
+# lib_dirs=(\
+# /usr/lib \
+# /usr/X11R6/lib \
+# /lib \
+# /opt/qt/lib \
+# /opt/kde/lib)
if [ "$1" = "-a" ]; then
obj_opts="--demangle=gnu-v3 --reloc --syms --debugging"
# $1 should now be the symbol (or symbol regexp) to search for
sym=${1}
-all_libs=$(find ${lib_dirs[*]} -name lost+found -prune -o \( -name lib\*.so\* -o -name lib\*.a \) -print)
+all_libs=$(find ${lib_dirs[*]} \( -name deprecated -o -name lost+found \) -prune -o \( -name lib\*.so\* -o -name lib\*.a \) -print)
for lib in ${all_libs} ; do
unset good_file
good_file="$(file ${lib}|grep '\(shared object\|ar archive\)' 2>/dev/null)"
if [ -n "${good_file}" ]; then
if [ $want_all -eq 1 ]; then
- objdump ${obj_opts} ${lib}|grep -q -E ${sym} && echo ${lib}
+ objdump ${obj_opts} ${lib} 2>/dev/null|grep -q -E ${sym} && echo ${lib}
else
- objdump ${obj_opts} ${lib}|grep -v UND|grep -q -E ${sym} && echo ${lib}
+ objdump ${obj_opts} ${lib} 2>/dev/null|grep -v UND|grep -q -E ${sym} && echo ${lib}
fi
fi
done