[poky] Missing debug info
Hatle, Mark
mark.hatle at windriver.com
Mon Apr 4 06:07:18 PDT 2011
On Apr 3, 2011, at 3:12 PM, "Gary Thomas" <gary at mlbassoc.com> wrote:
> On 04/03/2011 01:56 PM, Mark Hatle wrote:
>> On 4/3/11 9:53 AM, Gary Thomas wrote:
>>> I'm trying to debug some code which uses the openssl library, built from
>>> the Poky mainline. For some reason (not obvious to me), there is no debug
>>> info for this library, which makes GDB pretty useless :-(
>>>
>>> (gdb) info sharedlibrary
>>> From To Syms Read Shared Object Library
>>> 0x40077790 0x4008f60c Yes /tmp/cobra_root/lib/ld-linux.so.3
>>> 0x401abf80 0x401d57d8 Yes (*) /tmp/cobra_root/usr/lib/libssl.so.0.9.8
>>> 0x40225548 0x402cfbfc Yes (*) /tmp/cobra_root/usr/lib/libcrypto.so.0.9.8
>>> 0x400f28f8 0x4010cf90 Yes /tmp/cobra_root/usr/lib/libpcap.so.1
>>> 0x40326340 0x4040e8d8 Yes /tmp/cobra_root/lib/libc.so.6
>>> 0x401278fc 0x40128614 Yes /tmp/cobra_root/lib/libdl.so.2
>>> (*): Shared library is missing debugging information.
>>>
>>> Any idea why these libraries don't have debg info? how to get it?
>>> Rebuilding that library with printf() is pretty tedious...
>>>
>>> Thanks
>>>
>>
>> Do the libraries in question have corresponding -dbg package that are empty? Or
>> is there stuff in there, it's just incomplete?
>>
>> What I'm trying to understand is were these items stripped during the recipe
>> build, or when they're supposed to be by the package.bbclass into the regular
>> and dbg packages.
>
> Ah, interesting. The openssl package does have a -dbg version, but not for
> libopenssl nor libcrypto (which were built by the same source package). Any
> ideas how/why that happened? I didn't see any magic in the build arguments,
> but it's a pretty complex package so I might have missed something.
>
The dbg package is only provided for the corresponding source recipe. So if libssl, libcrypto both come from the OpenSSL recipe, then installing the openssl-dbg package is the right answer.
> Just to see what I could learn from this, I tried to install openssl-dbg and got this:
>
> Downloading file:/home/local/p60_poky/tmp/deploy/ipk/armv7a/openssl-dbg_0.9.8p-r3_armv7a.ipk.
> openssl-dbg: unsatisfied recommendation for libcrypto-dbg
> openssl-dbg: unsatisfied recommendation for libssl-dbg
This is a common problem that we'll need to address in a future release, but the dependency can be safely ignored. There is no libcrypto/libssl dbg specific package.
> Installing openssl (0.9.8p-r3) to root...
> Downloading file:/home/local/p60_poky/tmp/deploy/ipk/armv7a/openssl_0.9.8p-r3_armv7a.ipk.
> Configuring openssl.
> Configuring openssl-dbg.
If the openssl-dbg is installed then the corresponding files in the /usr/lib/.debug and /usr/src/debug should now exist and allow debugging on the target.
When you start up gdb, you should see a message that it is loading the debug symbols.
> --
> ------------------------------------------------------------
> Gary Thomas | Consulting for the
> MLB Associates | Embedded world
> ------------------------------------------------------------
More information about the poky
mailing list