----- "Eero Tamminen" <[email protected]> wrote:
> Hi,
>
> ext Cornelius Hald wrote:
> > Relying to myself :) It seems like I found the problem. If I try to
> run the new qemu from inside scratchbox I get this:
> > [sbox-DIABLO_ARMEL: ~] >
> /scratchbox/devkits/cputransp/bin/qemu-arm-0.10
> > /scratchbox/devkits/cputransp/bin/qemu-arm-0.10:
> /scratchbox/host_shared/lib/libc.so.6: version `GLIBC_2.4' not found
> (required by /scratchbox/devkits/cputransp/bin/qemu-arm-0.10)
> > /scratchbox/devkits/cputransp/bin/qemu-arm-0.10:
> /scratchbox/host_shared/lib/libc.so.6: version `GLIBC_2.8' not found
> (required by /scratchbox/devkits/cputransp/bin/qemu-arm-0.10)
> > /scratchbox/devkits/cputransp/bin/qemu-arm-0.10:
> /scratchbox/host_shared/lib/libc.so.6: version `GLIBC_2.3.4' not found
> (required by /scratchbox/devkits/cputransp/bin/qemu-arm-0.10)
> >
> > So it seems that the problem is the compilation of qemu on the host.
> Because of this qemu has dependencies to different versions of libc6.
> Versions that are not available from inside scratchbox. I'll try to
> fix that...
>
> Scratchbox is a chroot. If the libraries you compiled something
> against
> aren't inside the chroot, the binary won't work.
>
> You need to use the scratchbox host toolchain to compile the tools.
> (SDK installation should include a target for this)
Thanks for the input Eero! I already tried to compiled qemu using the X86 and
the HOST target, but the build always failed. Now I compiled a static binary on
my host and using that it works somehow.
[sbox-DIABLO_ARMEL: ~] > qemu-arm-0.10 hello
Hello world
But the problem is now, that if I call the ARM binary directly it looks like
it's not really passed as an argument to qemu. Instead qemu is called without
arguments, or with wrong arguments. Maybe the arguments are not 100% compatible
between 0.9 and 0.10.
sbox-DIABLO_ARMEL: ~] > ./hello
qemu-arm version 0.10.0, Copyright (c) 2003-2008 Fabrice Bellard
usage: qemu-arm [options] program [arguments...]
Linux CPU emulator (compiled for arm emulation)
Standard options:
-h print this help
-g port wait gdb connection to port
-L path set the elf interpreter prefix (default=/usr/gnemul/qemu-arm)
-s size set the stack size in bytes (default=524288)
-cpu model select CPU (-cpu ? for list)
-drop-ld-preload drop LD_PRELOAD for target process
-E var=value sets/modifies targets environment variable(s)
-U var unsets targets environment variable(s)
Debug options:
-d options activate log (logfile=/tmp/qemu.log)
-p pagesize set the host page size to 'pagesize'
-strace log system calls
Environment variables:
QEMU_STRACE Print system calls and arguments similar to the
'strace' program. Enable by setting to any value.
You can use -E and -U options to set/unset environment variables
for target process. It is possible to provide several variables
by repeating the option. For example:
-E var1=val2 -E var2=val2 -U LD_PRELOAD -U LD_DEBUG
Note that if you provide several changes to single variable
last change will stay in effect.
Does anyone know where it's defined how the qemu binary is called?
Thanks again!
Conny
_______________________________________________
maemo-developers mailing list
[email protected]
https://lists.maemo.org/mailman/listinfo/maemo-developers