diff -r 78d2f99d403f -r 6d909657dbdf scripts/xldd.in --- a/scripts/xldd.in Tue Nov 23 21:35:10 2010 +0100 +++ b/scripts/xldd.in Tue Nov 23 21:35:28 2010 +0100 @@ -132,7 +132,15 @@ exit 1 fi -sysroot="$( "${gcc}" -print-sysroot )" +sysroot="$( "${gcc}" -print-sysroot 2>/dev/null )" +if [ -z "${sysroot}" ]; then + sysroot="$( "${gcc}" -print-file-name=libc.so 2>/dev/null \ + |sed -r -e 's:/usr/lib/libc.so$::;' \ + )" +fi +if [ -z "${sysroot}" ]; then + do_error "unable to find sysroot for \`${gcc}'" +fi do_report_needed_found() { local needed="${1}"