--- /dev/null
+--- binutils-2.17.50.0.3/bfd/opncls.c.orig 2006-07-15 20:23:49.000000000 +0200
++++ binutils-2.17.50.0.3/bfd/opncls.c 2006-09-02 10:21:33.212591250 +0200
+@@ -1215,6 +1215,10 @@
+ return NULL;
+ }
+
++ /* PLD: check the possible absolute debuginfo path (e.g. /usr/lib/debug/... */
++ if (separate_debug_file_exists (basename, crc32))
++ return basename;
++
+ dir = strdup (abfd->filename);
+ if (dir == NULL)
+ {
+@@ -1353,9 +1357,6 @@
+ return NULL;
+ }
+
+- /* Strip off any path components in filename. */
+- filename = lbasename (filename);
+-
+ sect = bfd_get_section_by_name (abfd, GNU_DEBUGLINK);
+ if (sect)
+ {
+@@ -1439,10 +1440,6 @@
+ crc32 = bfd_calc_gnu_debuglink_crc32 (crc32, buffer, count);
+ fclose (handle);
+
+- /* Strip off any path components in filename,
+- now that we no longer need them. */
+- filename = lbasename (filename);
+-
+ debuglink_size = strlen (filename) + 1;
+ debuglink_size += 3;
+ debuglink_size &= ~3;