这是我的第一条消息,我在写你,因为这次我无法真正将我从这个问题中解救出来。“(gdb)run”在qemu仿真arm架构上运行可执行文件时崩溃
我正在浏览关于gdb的课程。在后面的课程中,该课程涵盖了ARM架构上的调试,所以我给出了一个让我模拟这种情况的设置。
- 的Windows 10:物理性主机
- 的Ubuntu 12.04.5 LTS:通过Oracle虚拟框来宾操作系统在Windows 10
- Linux的debian-
我目前的设置是由组成armel 2.6.32-5-versatile:在Ubuntu上通过qemu 2.8.0的guest os
- Linux的debian-
- 的Ubuntu 12.04.5 LTS:通过Oracle虚拟框来宾操作系统在Windows 10
ARM的Debian的图像来自https://people.debian.org/~aurel32/qemu/armel/
图像启动与
qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.32-5-versatile -initrd initrd.img-2.6.32-5-versatile -hda debian_squeeze_armel_standard.qcow2 -append "root=/dev/sda1" -m 256 -redir tcp:2222::22
我修改的sources.list和apt.conf允许容易的工作,因为德的发行是相当过时。我更新并升级并安装了gcc和gdb。
问题尝试调试时出现了:我可以在gdb
[email protected]:~/video-11/video-11# file ./main
./main: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not stripped
加载的可执行文件,但是当我尝试运行它和GDB里,我收到此消息,并执行挂起,直到我能从另一个控制台杀死gdb进程
------------[ cut here ]------------
WARNING: at /build/linux-2.6-fIxTVd/linux-2.6-2.6.32/debian/build/source_armel_none/kernel/sched.c:2628 wake_up_process+0x2c/0x48()
Modules linked in: loop sg smc91x sr_mod mii cdrom psmouse evdev ext3 jbd mbcache sd_mod crc_t10dif sym53c8xx scsi_transport_spi scsi_mod
[<c002b068>] (unwind_backtrace+0x0/0xdc) from [<c0046f88>] (warn_slowpath_common+0x4c/0x80)
[<c0046f88>] (warn_slowpath_common+0x4c/0x80) from [<c00446f0>] (wake_up_process+0x2c/0x48)
[<c00446f0>] (wake_up_process+0x2c/0x48) from [<c0026930>] (arch_ptrace+0x214/0x4bc)
[<c0026930>] (arch_ptrace+0x214/0x4bc) from [<c00508d8>] (sys_ptrace+0x9c/0x164)
[<c00508d8>] (sys_ptrace+0x9c/0x164) from [<c0024ec0>] (ret_fast_syscall+0x0/0x28)
---[ end trace 98ab50bc781b314f ]---
任何人都可以请指点一个方向来解决这个问题吗?
在此先感谢!
这可能是一个客户内核中的错误(虽然当然不是这样),所以我会开始尝试与更新的内核比2.6.32,这是现在已近8岁。 –
非常感谢你!尝试与其他图像形式相同的网址,内核3.2作品无瑕 – IlManu
彼得,发表您的评论作为一个职位,这样IlManu可以确认问题关闭 –