4
我编译gdbserver的7.6手臂:gdbserver的跟踪点臂支撑
cd /gdb-7.6-src/gdb/gdbserver
./configure --target=arm-linux --host=arm-linux
make CC=/path/to/cross-compiler-gcc
然后我编译GDB 7.6手臂:
cd /gdb-7.6-src/
./configure --target=arm-linux --prefix=/opt/gdb-arm/install/
make && make install
我编译琐碎的应用程序有:
/path/to/cross-compiler-gcc hello.c -g -o hello
我在我的主板上复制了gdbserver和我的交叉编译应用程序。 从我的电脑(x86的Linux PC的),我跑:
gdb hello
(gdb) set target-async on
(gdb) tvariable $c
(gdb) actions
>teval $c=$c+1
>end
(gdb) break main
(gdb) target remote <ipaddr>:<port>
[Thread 1585] #1 stopped.
0x40000800 in ??()
Cannot access memory at address 0x0
(gdb) continue &
(gdb) tstart
Target does not support this command.
(gdb) tstatus
Target does not support this command.
的行为是“正常”,直到TSTART命令:我可以调试应用程序,因为我想,但我无法启动跟踪应用程序。
现在的问题是:gdbserver是否支持arm或仅支持x86/amd_64的tracepoints?
UPDATE:它从gdb邮件列表中显示gdbserver中的tracpoints仅支持x86/amd_64。 – Elco