[yocto] On target gdb support for multiple architectures?

Khem Raj raj.khem at gmail.com
Fri May 27 23:07:59 PDT 2016


On Sat, May 28, 2016 at 1:33 AM, Stroz, Glenn <gstroz at qti.qualcomm.com> wrote:
> In this case there is not. It appears as if the aarch64 binary gets
> priority.
>
>
>
> root at qcom-bsp:/# find -name gdb
>
> find: ./proc/7639: No such file or directory
>
> ./usr/share/gdb
>
> ./usr/bin/gdb
>
> find: ./sys/kernel/slab/L2TP/IPv6: No such file or directory
>
> find: ./sys/kernel/slab/L2TP/IP: No such file or directory
>
> root at qcom-bsp:/#
>
>
>
> /usr/share/gdb is a folder
>
>
>
>
>
> The image file has the following:
>
>
>
> IMAGE_INSTALL += "gdb"
>
> IMAGE_INSTALL += "lib32-gdb"
>
>
>
> Ideally we would like one binary that is capable of debugging both

Keep in mind that mutlilib was a adhoc solution to keep running 32bit software
on 64bit arches. So minimally all you get is a 32bit runtime which is capable of
doing the same. Since these programs are debugged well and are supposed to run
out of box due to there legacy, to have multllib tools has less value.

having said that, you can add --enable-targets=<options> for gdb and
binutils as well
to get some capabilities to debug the system.

> architectures, but two binaries would be a short term workaround.
>
>
>
> -Glenn
>
>
>
> From: Khem Raj [mailto:raj.khem at gmail.com]
> Sent: Friday, May 27, 2016 12:20 AM
> To: Stroz, Glenn <gstroz at qti.qualcomm.com>
> Cc: yocto at yoctoproject.org
> Subject: Re: [yocto] On target gdb support for multiple architectures?
>
>
>
> There should be two gdb executables on your target.
>
> On May 26, 2016 3:34 PM, "Stroz, Glenn" <gstroz at qti.qualcomm.com> wrote:
>
> Hello,
>
>
>
> We’re trying to setup our target for onboard debugging. We have multiple
> architectures being built with multilib. An armv7 variant which is 32 bit
> and an armv8 variant which is 64 bit. We would like the gdb installed in the
> image to support both architectures. Right now, even when adding both gdb
> and lib32-gdb to the image we see it only supports aarch64.
>
>
>
> #
>
> # Multilib configuration
>
> #
>
> # This sets any packages preprended with lib32- to be built with
>
> # the armv7a tuning (32 bit) instead of 64 bit aarch.
>
> #
>
> require conf/multilib.conf
>
> MULTILIBS = "multilib:lib32"
>
> DEFAULTTUNE_virtclass-multilib-lib32 = "armv7a-neon"
>
>
>
> When adding lib32-gdb and gdb to image:
>
> (gdb) set architecture
>
> Requires an argument. Valid arguments are aarch64, aarch64:ilp32, auto.
>
>
>
> When adding only lib32-gdb to image:
>
> (gdb) set architecture
>
> Requires an argument. Valid arguments are arm, armv2, armv2a, armv3, armv3m,
> armv4, armv4t, armv5, armv5t, armv5te, xscale, ep9312, iwmmxt, iwmmxt2,
> auto.
>
>
>
> Is there any method of getting the build system to combine the two lists of
> architectures into one binary that supports them all?
>
>
>
> Thanks,
>
> Glenn
>
>
> --
> _______________________________________________
> yocto mailing list
> yocto at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/yocto



More information about the yocto mailing list