Bug 4069 - gdb requires _dl_debug_state symbol in /lib/ld-linux.so.2
: gdb requires _dl_debug_state symbol in /lib/ld-linux.so.2
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/glibc-core)
: unstable
: all Linux
: P2 major
Assigned To:
:
:
:
:
: 3459
  Show dependency tree
 
Reported: 2004-05-01 20:50 by
Modified: 2006-12-17 16:22 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2004-05-01 20:50:12
После обновления до glibc-2.3.3.200404240000-alt1 при попытке использования gdb
для отладки любой программы выдаётся следующее предупреждение:

warning: Unable to find dynamic linker breakpoint function.
GDB will be unable to debug shared library initializers
and track explicitly loaded dynamic code.

gdb ищет в /lib/ld-linux.so.2 символ _dl_debug_state, но в новой glibc он
перестал экспортироваться из ld-linux.so.2 и доступен только в таблице символов
для отладки; поскольку отладочная информация из /lib/ld-linux.so.2 убрана,
символ не обнаруживается.

Аналогичная ситуация уже была с /lib/libpthread.so.0; необходимо либо
восстановить экспорт, либо оставлять в /lib/ld-linux.so.2 отладочные символы
хотя бы в минимальном объёме.
------- Comment #1 From 2004-05-03 00:24:36 -------
Fixed in glibc-core-2.3.3.200404240000-alt4

$ readelf -s /lib/ld-2.2.6.so |fgrep _dl_debug_state
    35: 0000a090     5 FUNC    GLOBAL DEFAULT    9 _dl_debug_state@@GLIBC_2.0

$ readelf -s /lib/ld-2.3.3.so |fgrep _dl_debug_state
   245: 0000a5a0     5 FUNC    LOCAL  HIDDEN    9 _dl_debug_state