# qemu_gdb_rtt_ls1c **Repository Path**: caogos/qemu_gdb_rtt_ls1c ## Basic Information - **Project Name**: qemu_gdb_rtt_ls1c - **Description**: 运行在qemu上,可以用gdb调试的,RT-Thread的龙芯1c分支 - **Primary Language**: C - **License**: GPL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2017-09-19 - **Last Updated**: 2022-11-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # qemu_gdb_rtt_ls1c 运行在qemu上,可以用gdb调试的,RT-Thread的龙芯1c分支
# qemu qemu中已经包含了gdb server,只需要在qemu命令中增加参数“-gdb tcp::1234 -S”即可.首先进入rtthread.elf所在目录,然后输入如下命令
`qemu-system-mipsel -M mips -nographic -kernel rtthread.elf -gdb tcp::1234 -S`
命令中的“-M mips”表示使用mips r4k platform。因为目前qemu不支持龙芯1c,所以暂时以mips r4k platform代替。假如以后支持龙芯1c的了,只需要把参数“-M mips”改为“-M xxx”就好。
使用命令`qemu-system-mipsel -cpu ?`查看支持的所有CPU型号
使用命令`qemu-system-mipsel -M ?`查看支持的所以machine
# gdb x64 pc上默认的gdb不能用来调试mips程序,第三方工具链Sourcery CodeBench中的windows版本的“mips-sde-elf-gdb.exe”也不能用。需要下载gdb源码来自己编译,编译命令为
`./configure --target=mipsel-linux --prefix=/home/gdb/gdb-dest --program-prefix=mipsel-linux-` make和make install后,会在目录“/home/gdb/gdb-dest/”内生成我们需要的“mipsel-linux-gdb”文件,然后运行mipsel-linux-gdb `./mipsel-linux-gdb` 然后执行命令`target remote 192.168.3.102:1234`,连接qemu中的gdb server(假设qemu所在IP为192.168.3.102) 再然后执行命令`symbol-file /xxx/rtthread.elf`,加载符号表。注意在编译可执行文件rtthread.elf时,gcc需要有参数"-g",否则生成的可执行文件rtthread.elf中没有符号表等调试信息 好,可以用s,c,b等命令调试了


RT-Thread的官方git是https://github.com/RT-Thread/rt-thread