This hack lets me compile the app, but running a Windows XP image
gives SIGSEGV during the boot.
As Robert mentioned in another thread it might be a binutils bug after
all - I'm using 2.19 -
but it might be as well a kqemu bug. The crash happens in kqemu.c. See
the trace below.
Note: SIGSEGV does not happens with -no-kqemu
===================================================================
--- vnc.c (revision 6731)
+++ vnc.c (working copy)
@@ -62,10 +62,14 @@
err, gai_strerror(err));
return NULL;
}
-
+#ifndef _WIN32
if (asprintf(&addr, format, host, serv) < 0)
return NULL;
-
+#else
+ if (!(addr = malloc(512)))
+ return NULL;
+ sprintf(addr, format, host, serv);
+#endif
return addr;
}
===================================================================
Starting program: c:\test\qemu/i386-softmmu/qemu.exe -L c:\qemu-dist
-hda c:\qemu-img\wxp.q2 -fda c:\qemu-img\boot.bin -boot c -localtime
-m 512 -soundhw es1370 -net nic,model=rtl8139 -net tap,ifname=TAP0
-kernel-kqemu
[New thread 3488.0xd48]
[New thread 3488.0xde0]
[New thread 3488.0xcb0]
[New thread 3488.0xfb0]
[New thread 3488.0xba8]
[New thread 3488.0x3bc]
[New thread 3488.0x484]
Program received signal SIGSEGV, Segmentation fault.
kqemu_cpu_exec (env=0x2ef9eff8) at c:/test/qemu/kqemu.c:475
475 asm volatile ("fxrstor %0" : "=m" (*fp));
(gdb) bt
#0 kqemu_cpu_exec (env=0x2ef9eff8) at c:/test/qemu/kqemu.c:475
#1 0x004ac1e6 in cpu_x86_exec (env1=0x806ef000)
at c:/test/qemu/cpu-exec.c:317
#2 0x00407f38 in qemu_get_timedate (tm=<value optimized out>, offset=1)
at c:/test/qemu/vl.c:1816
#3 0x00000000 in ?? ()
(gdb)