Package: python-sip4-dbg Version: 4.8.1-1 Severity: important Hello,
I was trying to get a backtrace from system-config-printer-kde today, and for this reason, I installed the python-sip4-dbg package. However, I noticed that even though this package was installed, I still got the "??" lines in the backtrace: === 8< === (gdb) file /usr/bin/python Reading symbols from /usr/bin/python...Reading symbols from /usr/lib/debug/usr/bin/python2.5...done. done. (gdb) run /usr/share/kde4/apps/system-config-printer-kde/system-config-printer-kde.py Starting program: /usr/bin/python /usr/share/kde4/apps/system-config-printer-kde/system-config-printer-kde.py [Thread debugging using libthread_db enabled] [New Thread 0xb7de68d0 (LWP 2340)] Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb7de68d0 (LWP 2340)] 0xb7e5dad3 in strlen () from /lib/i686/cmov/libc.so.6 (gdb) bt #0 0xb7e5dad3 in strlen () from /lib/i686/cmov/libc.so.6 #1 0x0809886b in PyString_FromFormatV (format=0xb7a59274 "the sip module implements API v%d.0 but the %s module requires API v%d.%d", vargs=0xbfef6978 "\005") at ../Objects/stringobject.c:211 #2 0x080dce3b in PyErr_Format (exception=0x8144c40, format=0xb7a59274 "the sip module implements API v%d.0 but the %s module requires API v%d.%d") at ../Python/errors.c:522 #3 0xb7a56442 in ?? () from /usr/lib/pymodules/python2.5/sip.so #4 0x08144c40 in _PyExc_EOFError () #5 0xb7a59274 in ?? () from /usr/lib/pymodules/python2.5/sip.so #6 0x00000005 in ?? () #7 0x6bc2d458 in ?? () #8 0x00000003 in ?? () #9 0x00000008 in ?? () #10 0xbfef69a8 in ?? () #11 0x080894f1 in PyDict_GetItemString (v=0xb5e1d3c0, key=0x3 <Address 0x3 out of bounds>) at ../Objects/dictobject.c:2173 #12 0xb5d34647 in initkdecore () from /usr/lib/pymodules/python2.5/PyKDE4/kdecore.so #13 0x080e6597 in _PyImport_LoadDynamicModule (name=0xbfef7ae7 "PyKDE4.kdecore", pathname=0xbfef6a73 "/usr/lib/pymodules/python2.5/PyKDE4/kdecore.so", fp=0x8de3e48) at ../Python/importdl.c:53 #14 0x080e44f0 in load_module (name=0xbfef7ae7 "PyKDE4.kdecore", fp=0x73, buf=0xbfef6a73 "/usr/lib/pymodules/python2.5/PyKDE4/kdecore.so", type=3, loader=0x0) at ../Python/import.c:1758 #15 0x080e4cd7 in import_submodule (mod=0xb7da6fa4, subname=0xbfef7aee "kdecore", fullname=0xbfef7ae7 "PyKDE4.kdecore") at ../Python/import.c:2400 #16 0x080e4f6a in load_next (mod=0xb7da6fa4, altmod=0xb7da6fa4, p_name=<value optimized out>, buf=0xbfef7ae7 "PyKDE4.kdecore", p_buflen=0xbfef8ae8) at ../Python/import.c:2220 #17 0x080e5585 in import_module_level (name=0x0, globals=<value optimized out>, locals=<value optimized out>, fromlist=0xb7dd052c, level=-1) at ../Python/import.c:2008 #18 0x080e5892 in PyImport_ImportModuleLevel (name=0xb7d7ead4 "PyKDE4.kdecore", globals=0xb7dbfacc, locals=0xb7dbfacc, fromlist=0xb7dd052c, level=-1) at ../Python/import.c:2072 #19 0x080c8424 in builtin___import__ (self=0x0, args=0xb7d7e2d4, kwds=0x0) at ../Python/bltinmodule.c:47 #20 0x0805d4b7 in PyObject_Call (func=0x0, arg=0xb7d7e2d4, kw=0x0) at ../Objects/abstract.c:1861 #21 0x080c88fc in PyEval_CallObjectWithKeywords (func=0xb7daee6c, arg=0xb7d7e2d4, kw=0x0) at ../Python/ceval.c:3481 #22 0x080cc09e in PyEval_EvalFrameEx (f=0x8c5c72c, throwflag=0) at ../Python/ceval.c:2093 #23 0x080d00c5 in PyEval_EvalCodeEx (co=0xb7d909b0, globals=0xb7dbfacc, locals=0xb7dbfacc, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at ../Python/ceval.c:2875 #24 0x080d02d7 in PyEval_EvalCode (co=0xb7d909b0, globals=0xb7dbfacc, locals=0xb7dbfacc) at ../Python/ceval.c:514 #25 0x080ed71f in PyRun_FileExFlags (fp=0x8bf4008, filename=0xbfefa1aa "/usr/share/kde4/apps/system-config-printer-kde/system-config-printer-kde.py", start=257, globals=0xb7dbfacc, locals=0xb7dbfacc, closeit=1, flags=0xbfef8fa8) at ../Python/pythonrun.c:1273 #26 0x080ed9ea in PyRun_SimpleFileExFlags (fp=0x8bf4008, filename=0xbfefa1aa "/usr/share/kde4/apps/system-config-printer-kde/system-config-printer-kde.py", closeit=1, flags=0xbfef8fa8) at ../Python/pythonrun.c:879 #27 0x08059357 in Py_Main (argc=1, argv=0xbfef9074) at ../Modules/main.c:532 #28 0x08058722 in main (argc=Cannot access memory at address 0x0 ) at ../Modules/python.c:23 (gdb) === >8 === After this, I thought, why isn't gdb recognizing the debugging symbols that are already installed? Then I noticed that gdb was looking for the debugging symbols in "/usr/lib/pymodules/python2.5/sip.so" for some reason. After this, I did the following: === 8< === ln -s /usr/lib/debug/usr/lib/python2.5/site-packages/sip.so /usr/lib/debug/usr/lib/pymodules/python2.5/sip.so ldconfig === >8 === I ran gdb again, and voila, the backtrace is working now: === 8< === ... Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb7e938d0 (LWP 2563)] 0xb7f0aad3 in strlen () from /lib/i686/cmov/libc.so.6 (gdb) bt #0 0xb7f0aad3 in strlen () from /lib/i686/cmov/libc.so.6 #1 0x0809886b in PyString_FromFormatV (format=0xb7b06274 "the sip module implements API v%d.0 but the %s module requires API v%d.%d", vargs=0xbfc24938 "\005") at ../Objects/stringobject.c:211 #2 0x080dce3b in PyErr_Format (exception=0x8144c40, format=0xb7b06274 "the sip module implements API v%d.0 but the %s module requires API v%d.%d") at ../Python/errors.c:522 #3 0xb7b03442 in sip_api_export_module (client=0xb5eca3c0, api_major=3, api_minor=8, unused=0x8fa08ac) at /tmp/buildd/sip4-qt3-4.8.1/siplib/siplib.c:1001 #4 0xb5de1647 in initkdecore () from /usr/lib/pymodules/python2.5/PyKDE4/kdecore.so #5 0x080e6597 in _PyImport_LoadDynamicModule (name=0xbfc25aa7 "PyKDE4.kdecore", pathname=0xbfc24a33 "/usr/lib/pymodules/python2.5/PyKDE4/kdecore.so", fp=0x8e4fe20) at ../Python/importdl.c:53 #6 0x080e44f0 in load_module (name=0xbfc25aa7 "PyKDE4.kdecore", fp=0x73, buf=0xbfc24a33 "/usr/lib/pymodules/python2.5/PyKDE4/kdecore.so", type=3, loader=0x0) at ../Python/import.c:1758 #7 0x080e4cd7 in import_submodule (mod=0xb7e53fa4, subname=0xbfc25aae "kdecore", fullname=0xbfc25aa7 "PyKDE4.kdecore") at ../Python/import.c:2400 #8 0x080e4f6a in load_next (mod=0xb7e53fa4, altmod=0xb7e53fa4, p_name=<value optimized out>, buf=0xbfc25aa7 "PyKDE4.kdecore", p_buflen=0xbfc26aa8) at ../Python/import.c:2220 #9 0x080e5585 in import_module_level (name=0x0, globals=<value optimized out>, locals=<value optimized out>, fromlist=0xb7e7d52c, level=-1) at ../Python/import.c:2008 #10 0x080e5892 in PyImport_ImportModuleLevel (name=0xb7e2bad4 "PyKDE4.kdecore", globals=0xb7e6cacc, locals=0xb7e6cacc, fromlist=0xb7e7d52c, level=-1) at ../Python/import.c:2072 #11 0x080c8424 in builtin___import__ (self=0x0, args=0xb7e2b2d4, kwds=0x0) at ../Python/bltinmodule.c:47 #12 0x0805d4b7 in PyObject_Call (func=0x0, arg=0xb7e2b2d4, kw=0x0) at ../Objects/abstract.c:1861 #13 0x080c88fc in PyEval_CallObjectWithKeywords (func=0xb7e5be6c, arg=0xb7e2b2d4, kw=0x0) at ../Python/ceval.c:3481 #14 0x080cc09e in PyEval_EvalFrameEx (f=0x8cc872c, throwflag=0) at ../Python/ceval.c:2093 #15 0x080d00c5 in PyEval_EvalCodeEx (co=0xb7e3d9b0, globals=0xb7e6cacc, locals=0xb7e6cacc, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, closure=0x0) at ../Python/ceval.c:2875 #16 0x080d02d7 in PyEval_EvalCode (co=0xb7e3d9b0, globals=0xb7e6cacc, locals=0xb7e6cacc) at ../Python/ceval.c:514 #17 0x080ed71f in PyRun_FileExFlags (fp=0x8c60008, filename=0xbfc281aa "/usr/share/kde4/apps/system-config-printer-kde/system-config-printer-kde.py", start=257, globals=0xb7e6cacc, locals=0xb7e6cacc, closeit=1, flags=0xbfc26f68) at ../Python/pythonrun.c:1273 #18 0x080ed9ea in PyRun_SimpleFileExFlags (fp=0x8c60008, filename=0xbfc281aa "/usr/share/kde4/apps/system-config-printer-kde/system-config-printer-kde.py", closeit=1, flags=0xbfc26f68) at ../Python/pythonrun.c:879 #19 0x08059357 in Py_Main (argc=1, argv=0xbfc27034) at ../Modules/main.c:532 #20 0x08058722 in main (argc=Cannot access memory at address 0x0 ) at ../Modules/python.c:23 === >8 === I realize that this is not the correct way of fixing the problem; however, I couldn't find another way. Judging from the directory structures python-kde4 and kdebindings-dbg packages install their libraries and debugging symbols, respectively, I see that the problem with python-sip4-dbg could be that it doesn't install its debugging symbols using the same hierarchy in /usr/lib/debug. (i.e. If python-sip4 installs a library to /usr/lib/foo, then python-sip4-dbg should install that library's debugging symbols to /usr/lib/debug/usr/lib/foo, which is not the case currently.) Furthermore, the same problem might exist with python-qt4-dbg. I thought that other users might run into the same issue, and because this problem is a bit tricky to work around, I wanted to file this bug report. Please let me know if there is a misunderstanding on my part regarding how debugging symbols are installed and used. Regards, M. Vefa Bicakci -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org