qemu-i386 fails on system(3) with a cross-toolchain from Buildroot

Reported by fperrad on 2012-11-08
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
QEMU
Undecided
Unassigned

Bug Description

qemu-i386 fails with small C program containing a system().
The C program is cross-compiled with a toolchain created by buildroot (http://buildroot.net/), gcc version 4.6.3, uClibc version 0.9.33.2 .
qemu version 1.2.0 (built with http://git.buildroot.net/buildroot/tree/package/qemu/qemu.mk)
host machine : Ubuntu 12.04 LTS on x86_64.

    $ cat sys.c
    #include <stdio.h>
    #include <stdlib.h>

    int main()
   {
     int ret = system("echo hello");
     printf("%d\n", ret);
    }

    $ ../../host/usr/bin/i686-buildroot-linux-uclibc-gcc -o sys sys.c
    $ file sys
    sys: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), not stripped
    $ ../../host/usr/bin/qemu-i386 ./sys
    -1

same problem with x86_64 :
    $ ../../host/usr/bin/x86_64-buildroot-linux-uclibc-gcc -o sys sys.c
    $ file sys
    sys: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), not stripped
    $ ../../host/usr/bin/qemu-x86_64 sys
    -1

works fine with arm :
    $ ../../host/usr/bin/arm-buildroot-linux-uclibcgnueabi-gcc -o sys sys.c
    $ file sys
    sys: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), not stripped
    $ ../../host/usr/bin/qemu-arm ./sys
    hello
    0

works fine with mips :
    $ ../../host/usr/bin/mips-buildroot-linux-uclibc-gcc -o sys sys.c
    $ file sys
    sys: ELF 32-bit MSB executable, MIPS, MIPS32 rel2 version 1 (SYSV), dynamically linked (uses shared libs), with unknown capability 0x41000000 = 0xf676e75, with unknown capability 0x10000 = 0x70403, not stripped
    $ ../../host/usr/bin/qemu-mips sys
    hello
    0

Peter Maydell (pmaydell) wrote :

Looks like the long-standing "clone/fork for i386 user mode targets doesn't work" issue. See also discussion in bug 739785...

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers