[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Qemu user-mode MacOS
From: |
Blue Swirl |
Subject: |
Re: [Qemu-devel] Qemu user-mode MacOS |
Date: |
Sat, 22 Aug 2009 18:14:02 +0300 |
On Fri, Aug 21, 2009 at 3:43 AM, Toni<address@hidden> wrote:
> Hi,
> I have a problem: I'm trying to install on Mac OS qemu user-mode, I need it,
> and so I find out that the only way is correct the wrong part of the source
> code of qemu darwin_user, I correct some errors, but now I found out
> something that I don't undestand:
> CC i386-darwin-user/cpu-exec.o
> /Users/ToNy/Desktop/qemu-0.10.5_prova/cpu-exec.c: In function
> ‘cpu_x86_signal_handler’:
> /Users/ToNy/Desktop/qemu-0.10.5_prova/cpu-exec.c:1182: error: dereferencing
> pointer to incomplete type
> /Users/ToNy/Desktop/qemu-0.10.5_prova/cpu-exec.c:1183: error: dereferencing
> pointer to incomplete type
> /Users/ToNy/Desktop/qemu-0.10.5_prova/cpu-exec.c:1186: error: dereferencing
> pointer to incomplete type
> /Users/ToNy/Desktop/qemu-0.10.5_prova/cpu-exec.c:1187: error: dereferencing
> pointer to incomplete type
> the problem may be the ucontext definition of the uc variable, that is
> defined in sys/ucontext.h, that call _structs.h where finally we found the
> struct:
Maybe struct mcontext is not defined? You could try splitting the code
to pieces, each trying one step in the pointer reference chain:
Instead of
# define EIP_sig(context) (*((unsigned long*)&(context)->uc_mcontext->ss.eip))
you could try something like
struct mcontext *mc;
struct sigaltstack *ss;
mc = uc->uc_mcontext;
ss = mc->ss;
pc = ss->eip;