[poky] Missing debug info
Gary Thomas
gary at mlbassoc.com
Mon Apr 4 06:36:15 PDT 2011
On 04/04/2011 07:07 AM, Hatle, Mark wrote:
>
>
>
>
> 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.
Thanks for the explanation. Perhaps this should be filed as a bug [enhancement]?
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
More information about the poky
mailing list