qemu-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-discuss] Trouble getting ARM Linux kernel to boot


From: Steven Frank
Subject: Re: [Qemu-discuss] Trouble getting ARM Linux kernel to boot
Date: Mon, 24 Sep 2012 17:34:30 -0700


On Sep 21, 2012, at 5:51 PM, Ezequiel Garcia <address@hidden> wrote:

On Fri, Sep 21, 2012 at 7:03 PM, Steven Frank <address@hidden> wrote:

On Sep 21, 2012, at 11:59 AM, Ezequiel Garcia <address@hidden> wrote:

I am using a Mac OS X host to build the Linux 3.5 kernel for ARM, and trying to boot it in QEMU 1.2.0.

The kernel, to my surprise, built fine on my Mac using the arm-none-eabi-gcc toolchain from MacPorts.  I'm using the versatile_defconfig, since that turned up a lot when I was Googling how to do this.

Then I try to boot my kernel in QEMU using this command line:

      arm-softmmu/qemu-system-arm -m 16 -M versatilepb -kernel arch/arm/boot/zImage -serial stdio

I don't have a rootfs yet -- I was hoping to just get as far as seeing the kernel boot messages.

It outputs this:

      Uncompressing Linux... done, booting the kernel.

Then hangs, with an empty white window.  Nothing further appears to happen.

I had the same problem just yesterday. Try with older kernel 2.6.32 /
2.6.38 and let me know.

Also, what kernel config are you using?

I'm using the versatile_defconfig to (hopefully) match up with QEMU's "versatilepb" machine.

I just tried 2.6.32 and 2.6.38.  Same results, although 2.6.32 outputs more dots between "Uncompressing Linux" and "booting the kernel".  But both hang at the blank white screen, just like 3.5 did.

There is one other interesting difference.  When trying to boot 2.6.32, QEMU remains responsive.  In other words, it responds to events like Cmd-Q to quit.  With the later kernels, QEMU hangs completely and must be force-quit (killed).

Very curious.  Any thoughts?


It was working yesterday. Let me check my qemu / kernel version and
the parameters
I'm using....

I think I finally located the problem.

The QEMU binary is defective when built with Apple's LLVM-based toolchain, as documented here:

https://bugs.launchpad.net/qemu/+bug/925412

My workaround was to install gcc 4.8 using MacPorts:

sudo port install gcc48

Configure and build QEMU like so:

./configure --disable-sdl --disable-kvm --target-list=arm-softmmu --cc=x86_64-apple-darwin12-gcc-4.8.0 --host-cc=x86_64-apple-darwin12-gcc-4.8.0

And now I can boot my compiled-from-source Linux kernel.

Steven

Attachment: smime.p7s
Description: S/MIME cryptographic signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]