public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
* gdbserver: Target description specified unknown architecture “aarch64”
@ 2018-11-28 18:31 Peter Balazovic
  2018-11-28 18:42 ` Peter Balazovic
  2018-11-28 22:28 ` Pedro Alves
  0 siblings, 2 replies; 9+ messages in thread
From: Peter Balazovic @ 2018-11-28 18:31 UTC (permalink / raw)
  To: gdb

I try to use remotely the gdbserver for debug as follows

Start the gdbserver on target machine

$ gdbserver localhost:2000 hello -l 20 -b 10

Host machine has the program binary with debugging enabled

"copied binary from ARM target to host"

Run gdb on host machine

$ gdb -q --args hello --enable-target=all

Connect to the target

(gdb) target remote 192.168.15.132192.168.15.132: No such file or directory.
(gdb) target remote 192.168.15.132:2000
Remote debugging using 192.168.15.132:2000
warning: while parsing target description (at line 11): Target
description specified unknown architecture "aarch64"
warning: Could not load XML target description; ignoring
Remote register badly formatted:
T051d:0000000000000000;1f:80fcffffffff0000;20:403cfdb7ffff0000;thread:pd60.d60;core:1;
here: 00000000;1f:80fcffffffff0000;20:403cfdb7ffff0000;thread:pd60.d60;core:1;
(gdb) q

I am looking for an advice to correctly debug with ARM remote target.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: gdbserver: Target description specified unknown architecture “aarch64”
  2018-11-28 18:31 gdbserver: Target description specified unknown architecture “aarch64” Peter Balazovic
@ 2018-11-28 18:42 ` Peter Balazovic
  2018-11-28 22:28 ` Pedro Alves
  1 sibling, 0 replies; 9+ messages in thread
From: Peter Balazovic @ 2018-11-28 18:42 UTC (permalink / raw)
  To: gdb

On Wed, Nov 28, 2018 at 7:31 PM Peter Balazovic <balazovic.peter@gmail.com>
wrote:

> I try to use remotely the gdbserver for debug as follows
>
> Start the gdbserver on target machine
>
> $ gdbserver localhost:2000 hello -l 20 -b 10
>
> Host machine has the program binary with debugging enabled
>
> "copied binary from ARM target to host"
>
> Run gdb on host machine
>
> $ gdb -q --args hello --enable-target=all
>
> Connect to the target
>
> (gdb) target remote 192.168.15.132192.168.15.132: No such file or directory.
> (gdb) target remote 192.168.15.132:2000
> Remote debugging using 192.168.15.132:2000
> warning: while parsing target description (at line 11): Target description specified unknown architecture "aarch64"
> warning: Could not load XML target description; ignoring
> Remote register badly formatted: T051d:0000000000000000;1f:80fcffffffff0000;20:403cfdb7ffff0000;thread:pd60.d60;core:1;
> here: 00000000;1f:80fcffffffff0000;20:403cfdb7ffff0000;thread:pd60.d60;core:1;
> (gdb) q
>
> I am looking for an advice to correctly debug with ARM remote target.
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: gdbserver: Target description specified unknown architecture “aarch64”
  2018-11-28 18:31 gdbserver: Target description specified unknown architecture “aarch64” Peter Balazovic
  2018-11-28 18:42 ` Peter Balazovic
@ 2018-11-28 22:28 ` Pedro Alves
  2018-11-28 22:42   ` Peter Balazovic
  2018-11-28 22:47   ` Peter Balazovic
  1 sibling, 2 replies; 9+ messages in thread
From: Pedro Alves @ 2018-11-28 22:28 UTC (permalink / raw)
  To: Peter Balazovic, gdb

On 11/28/2018 06:31 PM, Peter Balazovic wrote:

> I am looking for an advice to correctly debug with ARM remote target.

Does "set architecture <TAB><TAB>" give you the option to select aarch64?

It sounds like your gdb is not configured to support Aarch64.

You'll need a gdb configured with
  --target=aarch64-linux-gnu 
or
  --enable-targets=aarch64-linux-gnu
  --enable-targets=all

Try "show configuration" in gdb.

Thanks,
Pedro Alves

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: gdbserver: Target description specified unknown architecture “aarch64”
  2018-11-28 22:28 ` Pedro Alves
@ 2018-11-28 22:42   ` Peter Balazovic
  2018-11-29  0:22     ` Pedro Alves
  2018-11-28 22:47   ` Peter Balazovic
  1 sibling, 1 reply; 9+ messages in thread
From: Peter Balazovic @ 2018-11-28 22:42 UTC (permalink / raw)
  To: gdb

this is mine config available on gdb

(gdb) show configuration
This GDB was configured as follows:
   configure --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32
             --with-auto-load-dir=$debugdir:$datadir/auto-load
             --with-auto-load-safe-path=$debugdir:$datadir/auto-load
             --with-expat

 --with-gdb-datadir=/c/mingw810/x86_64-810-posix-seh-rt_v6-rev0/mingw64/share/gdb
(relocatable)

 --with-jit-reader-dir=/c/mingw810/x86_64-810-posix-seh-rt_v6-rev0/mingw64/lib/gdb
(relocatable)
             --without-libunwind-ia64
             --without-lzma

 --with-python=/c/mingw810/x86_64-810-posix-seh-rt_v6-rev0/mingw64/opt
(relocatable)
             --without-guile

 --with-separate-debug-dir=/c/mingw810/x86_64-810-posix-seh-rt_v6-rev0/mingw64/lib/debug
(relocatable)

 --with-system-gdbinit=/c/mingw810/x86_64-810-posix-seh-rt_v6-rev0/mingw64/etc/gdbinit
(relocatable)
             --without-babeltrace

("Relocatable" means the directory can be moved with the GDB installation
tree, and GDB will still find it.)
(gdb) set architecture
auto               i386:intel         i386:x64-32        i386:x64-32:nacl
 i386:x86-64:intel  i8086
i386               i386:nacl          i386:x64-32:intel  i386:x86-64
i386:x86-64:nacl


On Wed, Nov 28, 2018 at 11:28 PM Pedro Alves <palves@redhat.com> wrote:

> On 11/28/2018 06:31 PM, Peter Balazovic wrote:
>
> > I am looking for an advice to correctly debug with ARM remote target.
>
> Does "set architecture <TAB><TAB>" give you the option to select aarch64?
>
> It sounds like your gdb is not configured to support Aarch64.
>
> You'll need a gdb configured with
>   --target=aarch64-linux-gnu
> or
>   --enable-targets=aarch64-linux-gnu
>   --enable-targets=all
>
> Try "show configuration" in gdb.
>
> Thanks,
> Pedro Alves
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: gdbserver: Target description specified unknown architecture “aarch64”
  2018-11-28 22:28 ` Pedro Alves
  2018-11-28 22:42   ` Peter Balazovic
@ 2018-11-28 22:47   ` Peter Balazovic
  1 sibling, 0 replies; 9+ messages in thread
From: Peter Balazovic @ 2018-11-28 22:47 UTC (permalink / raw)
  To: gdb

mine linux machine of gdb config

(gdb) show configuration
This GDB was configured as follows:
   configure --host=x86_64-linux-gnu --target=x86_64-linux-gnu
             --with-auto-load-dir=$debugdir:$datadir/auto-load
             --with-auto-load-safe-path=$debugdir:$datadir/auto-load
             --with-expat
             --with-gdb-datadir=/usr/share/gdb (relocatable)
             --with-jit-reader-dir=/usr/lib/gdb (relocatable)
             --without-libunwind-ia64
             --with-lzma
             --with-python=/usr (relocatable)
             --without-guile
             --with-separate-debug-dir=/usr/lib/debug (relocatable)
             --with-system-gdbinit=/etc/gdb/gdbinit
             --with-babeltrace

("Relocatable" means the directory can be moved with the GDB installation
tree, and GDB will still find it.)
(gdb) set architecture
auto               i386               i386:intel         i386:nacl
i386:x64-32        i386:x64-32:intel  i386:x64-32:nacl   i386:x86-64
i386:x86-64:intel  i386:x86-64:nacl   i8086


On Wed, Nov 28, 2018 at 11:28 PM Pedro Alves <palves@redhat.com> wrote:

> On 11/28/2018 06:31 PM, Peter Balazovic wrote:
>
> > I am looking for an advice to correctly debug with ARM remote target.
>
> Does "set architecture <TAB><TAB>" give you the option to select aarch64?
>
> It sounds like your gdb is not configured to support Aarch64.
>
> You'll need a gdb configured with
>   --target=aarch64-linux-gnu
> or
>   --enable-targets=aarch64-linux-gnu
>   --enable-targets=all
>
> Try "show configuration" in gdb.
>
> Thanks,
> Pedro Alves
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: gdbserver: Target description specified unknown architecture “aarch64”
  2018-11-28 22:42   ` Peter Balazovic
@ 2018-11-29  0:22     ` Pedro Alves
  2018-11-29  6:05       ` Peter Balazovic
  0 siblings, 1 reply; 9+ messages in thread
From: Pedro Alves @ 2018-11-29  0:22 UTC (permalink / raw)
  To: Peter Balazovic, gdb

On 11/28/2018 10:42 PM, Peter Balazovic wrote:
> this is mine config available on gdb
> 
> (gdb) show configuration
> This GDB was configured as follows:
>    configure --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32
                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^

As suspected, here's the problem ^^

> ("Relocatable" means the directory can be moved with the GDB installation
> tree, and GDB will still find it.)
> (gdb) set architecture
> auto               i386:intel         i386:x64-32        i386:x64-32:nacl
>  i386:x86-64:intel  i8086
> i386               i386:nacl          i386:x64-32:intel  i386:x86-64
> i386:x86-64:nacl

As you can see, your build of gdb only supports x86 machines.

With an --enable-targets=all build, I see many, many more entries:

(gdb) set architecture
Requires an argument. Valid arguments are ARC600, A6, ARC601, ARC700, A7, ARCv2, EM, HS, arm, armv2, armv2a, armv3, armv3m, armv4, armv4t, armv5, armv5t, armv5te, xscale, ep9312, iwmmxt, iwmmxt2, armv5tej, armv6, armv6kz, armv6t2, armv6k, armv7, armv6-m, armv6s-m, armv7e-m, armv8-a, armv8-r, armv8-m.base, armv8-m.main, arm_any, avr, avr:1, avr:2, avr:25, avr:3, avr:31, avr:35, avr:4, avr:5, avr:51, avr:6, avr:100, avr:101, avr:102, avr:103, avr:104, avr:105, avr:106, avr:107, bfin, cris, crisv32, cris:common_v10_v32, csky, [...]
ia64-elf64, ia64-elf32, auto.
(gdb)

... including the aarch64 you need:

(gdb) set architecture aarch64<TAB>
aarch64        aarch64:ilp32  

> 
> 
> On Wed, Nov 28, 2018 at 11:28 PM Pedro Alves <palves@redhat.com> wrote:
> 
>> On 11/28/2018 06:31 PM, Peter Balazovic wrote:
>>
>>> I am looking for an advice to correctly debug with ARM remote target.
>>
>> Does "set architecture <TAB><TAB>" give you the option to select aarch64?
>>
>> It sounds like your gdb is not configured to support Aarch64.
>>
>> You'll need a gdb configured with
>>   --target=aarch64-linux-gnu
>> or
>>   --enable-targets=aarch64-linux-gnu
>>   --enable-targets=all
>>
>> Try "show configuration" in gdb.

Thanks,
Pedro Alves

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: gdbserver: Target description specified unknown architecture “aarch64”
  2018-11-29  0:22     ` Pedro Alves
@ 2018-11-29  6:05       ` Peter Balazovic
  2018-11-29  9:52         ` Peter Balazovic
  2018-11-29 14:11         ` Pedro Alves
  0 siblings, 2 replies; 9+ messages in thread
From: Peter Balazovic @ 2018-11-29  6:05 UTC (permalink / raw)
  To: gdb

understand, question is how to add more supported machines on gdb ...

On Thu, Nov 29, 2018 at 1:22 AM Pedro Alves <palves@redhat.com> wrote:

> On 11/28/2018 10:42 PM, Peter Balazovic wrote:
> > this is mine config available on gdb
> >
> > (gdb) show configuration
> > This GDB was configured as follows:
> >    configure --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32
>                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> As suspected, here's the problem ^^
>
> > ("Relocatable" means the directory can be moved with the GDB installation
> > tree, and GDB will still find it.)
> > (gdb) set architecture
> > auto               i386:intel         i386:x64-32        i386:x64-32:nacl
> >  i386:x86-64:intel  i8086
> > i386               i386:nacl          i386:x64-32:intel  i386:x86-64
> > i386:x86-64:nacl
>
> As you can see, your build of gdb only supports x86 machines.
>
> With an --enable-targets=all build, I see many, many more entries:
>
> (gdb) set architecture
> Requires an argument. Valid arguments are ARC600, A6, ARC601, ARC700, A7,
> ARCv2, EM, HS, arm, armv2, armv2a, armv3, armv3m, armv4, armv4t, armv5,
> armv5t, armv5te, xscale, ep9312, iwmmxt, iwmmxt2, armv5tej, armv6, armv6kz,
> armv6t2, armv6k, armv7, armv6-m, armv6s-m, armv7e-m, armv8-a, armv8-r,
> armv8-m.base, armv8-m.main, arm_any, avr, avr:1, avr:2, avr:25, avr:3,
> avr:31, avr:35, avr:4, avr:5, avr:51, avr:6, avr:100, avr:101, avr:102,
> avr:103, avr:104, avr:105, avr:106, avr:107, bfin, cris, crisv32,
> cris:common_v10_v32, csky, [...]
> ia64-elf64, ia64-elf32, auto.
> (gdb)
>
> ... including the aarch64 you need:
>
> (gdb) set architecture aarch64<TAB>
> aarch64        aarch64:ilp32
>
> >
> >
> > On Wed, Nov 28, 2018 at 11:28 PM Pedro Alves <palves@redhat.com> wrote:
> >
> >> On 11/28/2018 06:31 PM, Peter Balazovic wrote:
> >>
> >>> I am looking for an advice to correctly debug with ARM remote target.
> >>
> >> Does "set architecture <TAB><TAB>" give you the option to select
> aarch64?
> >>
> >> It sounds like your gdb is not configured to support Aarch64.
> >>
> >> You'll need a gdb configured with
> >>   --target=aarch64-linux-gnu
> >> or
> >>   --enable-targets=aarch64-linux-gnu
> >>   --enable-targets=all
> >>
> >> Try "show configuration" in gdb.
>
> Thanks,
> Pedro Alves
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: gdbserver: Target description specified unknown architecture “aarch64”
  2018-11-29  6:05       ` Peter Balazovic
@ 2018-11-29  9:52         ` Peter Balazovic
  2018-11-29 14:11         ` Pedro Alves
  1 sibling, 0 replies; 9+ messages in thread
From: Peter Balazovic @ 2018-11-29  9:52 UTC (permalink / raw)
  To: gdb

under ubuntu I installed

sudo apt-get update
sudo apt-get install gdb-multiarch

at terminal:
~/work/test1$ gdb-multiarch -q "my_hello_application"

(gdb) set architecture
Display all 184 possibilities? (y or n)
aarch64                        mips:4400
aarch64:ilp32                  mips:4600
alpha                          mips:4650
alpha:ev4                      mips:5000
alpha:ev5                      mips:5400
alpha:ev6                      mips:5500
arm                            mips:5900
armv2                          mips:6000
armv2a                         mips:7000
armv3                          mips:8000
armv3m                         mips:9000
armv4                          mips:isa32
armv4t                         mips:isa32r2
armv5                          mips:isa32r3
armv5t                         mips:isa32r5
armv5te                        mips:isa32r6
auto                           mips:isa64
ep9312                         mips:isa64r2
hppa1.0                        mips:isa64r3
i386                           mips:isa64r5
i386:intel                     mips:isa64r6
i386:nacl                      mips:loongson_2e
i386:x64-32                    mips:loongson_2f

it seems it communicates ... I use
https://www.tutorialspoint.com/unix_commands/gdbserver.htm

if you find other way around just post it :)


On Thu, Nov 29, 2018 at 7:05 AM Peter Balazovic <balazovic.peter@gmail.com>
wrote:

> understand, question is how to add more supported machines on gdb ...
>
> On Thu, Nov 29, 2018 at 1:22 AM Pedro Alves <palves@redhat.com> wrote:
>
>> On 11/28/2018 10:42 PM, Peter Balazovic wrote:
>> > this is mine config available on gdb
>> >
>> > (gdb) show configuration
>> > This GDB was configured as follows:
>> >    configure --host=x86_64-w64-mingw32 --target=x86_64-w64-mingw32
>>                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^
>>
>> As suspected, here's the problem ^^
>>
>> > ("Relocatable" means the directory can be moved with the GDB
>> installation
>> > tree, and GDB will still find it.)
>> > (gdb) set architecture
>> > auto               i386:intel         i386:x64-32
>> i386:x64-32:nacl
>> >  i386:x86-64:intel  i8086
>> > i386               i386:nacl          i386:x64-32:intel  i386:x86-64
>> > i386:x86-64:nacl
>>
>> As you can see, your build of gdb only supports x86 machines.
>>
>> With an --enable-targets=all build, I see many, many more entries:
>>
>> (gdb) set architecture
>> Requires an argument. Valid arguments are ARC600, A6, ARC601, ARC700, A7,
>> ARCv2, EM, HS, arm, armv2, armv2a, armv3, armv3m, armv4, armv4t, armv5,
>> armv5t, armv5te, xscale, ep9312, iwmmxt, iwmmxt2, armv5tej, armv6, armv6kz,
>> armv6t2, armv6k, armv7, armv6-m, armv6s-m, armv7e-m, armv8-a, armv8-r,
>> armv8-m.base, armv8-m.main, arm_any, avr, avr:1, avr:2, avr:25, avr:3,
>> avr:31, avr:35, avr:4, avr:5, avr:51, avr:6, avr:100, avr:101, avr:102,
>> avr:103, avr:104, avr:105, avr:106, avr:107, bfin, cris, crisv32,
>> cris:common_v10_v32, csky, [...]
>> ia64-elf64, ia64-elf32, auto.
>> (gdb)
>>
>> ... including the aarch64 you need:
>>
>> (gdb) set architecture aarch64<TAB>
>> aarch64        aarch64:ilp32
>>
>> >
>> >
>> > On Wed, Nov 28, 2018 at 11:28 PM Pedro Alves <palves@redhat.com> wrote:
>> >
>> >> On 11/28/2018 06:31 PM, Peter Balazovic wrote:
>> >>
>> >>> I am looking for an advice to correctly debug with ARM remote target.
>> >>
>> >> Does "set architecture <TAB><TAB>" give you the option to select
>> aarch64?
>> >>
>> >> It sounds like your gdb is not configured to support Aarch64.
>> >>
>> >> You'll need a gdb configured with
>> >>   --target=aarch64-linux-gnu
>> >> or
>> >>   --enable-targets=aarch64-linux-gnu
>> >>   --enable-targets=all
>> >>
>> >> Try "show configuration" in gdb.
>>
>> Thanks,
>> Pedro Alves
>>
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: gdbserver: Target description specified unknown architecture “aarch64”
  2018-11-29  6:05       ` Peter Balazovic
  2018-11-29  9:52         ` Peter Balazovic
@ 2018-11-29 14:11         ` Pedro Alves
  1 sibling, 0 replies; 9+ messages in thread
From: Pedro Alves @ 2018-11-29 14:11 UTC (permalink / raw)
  To: Peter Balazovic, gdb

On 11/29/2018 06:05 AM, Peter Balazovic wrote:
> understand, question is how to add more supported machines on gdb ...

As I said before:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
You'll need a gdb configured with
  --target=aarch64-linux-gnu
or
  --enable-targets=aarch64-linux-gnu
  --enable-targets=all
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

I.e., you either build a GDB yourself with one of those
configure options, or you find a pre-built gdb somewhere,
one which was configured that way.

Reading your follow up, I see that you're on Ubuntu, and you
found out the gdb-multiarch package.  Great, I did not know
Ubuntu had such a package.  Evidently that was built/configured
with --enable-targets=all.

Good luck with your debugging.

Thanks,
Pedro Alves

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2018-11-29 14:11 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-28 18:31 gdbserver: Target description specified unknown architecture “aarch64” Peter Balazovic
2018-11-28 18:42 ` Peter Balazovic
2018-11-28 22:28 ` Pedro Alves
2018-11-28 22:42   ` Peter Balazovic
2018-11-29  0:22     ` Pedro Alves
2018-11-29  6:05       ` Peter Balazovic
2018-11-29  9:52         ` Peter Balazovic
2018-11-29 14:11         ` Pedro Alves
2018-11-28 22:47   ` Peter Balazovic

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).