On Monday 12 June 2006 15:09, Wolfgang Schildbach wrote:
> Hi Paul,
>
> Does this mean that qemu-arm should be able to run the binaries that are
> produced by RVCT? I am trying to run a simple helloworld, compiled and
> linked with rvct2.2 (armcc -g -o hello hello.c) into a "ELF 32-bit LSB
> executable, ARM, version 1 (SYSV), statically linked, not stripped" file,
> but qemu-arm fails with an "error loading ./hello".

Yes it should be able to run RVCT binaries. The problem is that the qemu 
loader assumes the LMA and file offsets be page aligned (ie. be the same 
modulo the page size). This is part of the ABI for linux executables so that 
the binary can be mmapped directly into memory. RVCT does not enforce this 
alignment by default.

> On a related note, how do I go about debugging qemu (namely the part that
> loads executables)? Since qemu appears as a shared object, this is not so
> straightforward. When I start gdb on arm-user, set a breakpoint at main()
> and type "run", I get

Configure with --static.

Paul


_______________________________________________
Qemu-devel mailing list
Qemu-devel@nongnu.org
http://lists.nongnu.org/mailman/listinfo/qemu-devel

Reply via email to