[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PROBLEM FOUND] qemu-arm on FC2 (was: Re: [Qemu-devel] ARM in big en
From: |
David Woodhouse |
Subject: |
Re: [PROBLEM FOUND] qemu-arm on FC2 (was: Re: [Qemu-devel] ARM in big endian mode?) |
Date: |
Fri, 06 Aug 2004 17:31:14 +0100 |
On Fri, 2004-08-06 at 17:59 +0200, Lennert Buytenhek wrote:
> On Fri, Aug 06, 2004 at 03:55:07PM +0100, David Woodhouse wrote:
>
> > > > > % ./qemu-arm ./x
> > > > > qemu: uncaught target signal 11 (Segmentation fault) - exiting
> > <...>
> > > Just checked, and indeed, LE binaries segfault too.
> > <...>
> > > So it looks like it (might have) worked in the past but broke somewhere
> > > between then and now.
> >
> > Are you using a newer glibc now than the one you were using before?
>
> Yes. Now I'm using Fedora Core 2, but Red Hat 9 back then, I think.
Hmm. I meant the ARM glibc, not the host. I have a vague recollection
that using an older ARM libc made it work OK. Using statically linked
ARM binaries also made it work.
> I just found some time for some more testing, and it's FC2's noexecstack
> messing up in this particular case. If I create, using gcc 2.95.3 and
> glibc 2.1.3 vanilla, a static ARM little-endian "Hello world" binary, and
> run it with qemu-arm latest CVS, it works if I specify -Wl,-z,execstack
> when linking qemu-arm, and crashes with sig11 if I do not.
With 0.6.0 this doesn't do it for me. This is a Familiar 0.7.2 image
with glibc 2.3.2
shinybook /home/dwmw2/working/pkgs/qemu/qemu-0.6.0/arm-user $ gcc -g
-Wl,-T,/home/dwmw2/working/pkgs/qemu/qemu-0.6.0/ppc.ld -o qemu-arm elfload.o
main.o syscall.o mmap.o signal.o path.o osdep.o thunk.o nwfpe/softfloat.o
nwfpe/fpa11.o nwfpe/fpa11_cpdo.o nwfpe/fpa11_cpdt.o nwfpe/fpa11_cprt.o
nwfpe/fpopcode.o nwfpe/single_cpdo.o nwfpe/double_cpdo.o nwfpe/extended_cpdo.o
libqemu.a -lm -Wl,-z,execstack
shinybook /home/dwmw2/working/pkgs/qemu/qemu-0.6.0/arm-user $ ./qemu-arm
/usr/qemu-arm/bin/echo hello
qemu: uncaught target signal 11 (Segmentation fault) - exiting
--
dwmw2