From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.33) id 1BbMSr-0004oY-LG for qemu-devel@nongnu.org; Fri, 18 Jun 2004 12:43:41 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.33) id 1BbMSq-0004oC-BU for qemu-devel@nongnu.org; Fri, 18 Jun 2004 12:43:41 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1BbMSq-0004o2-8z for qemu-devel@nongnu.org; Fri, 18 Jun 2004 12:43:40 -0400 Received: from [212.65.193.3] (helo=mail.contactel.cz) by monty-python.gnu.org with esmtp (Exim 4.34) id 1BbMRX-00038Y-IU for qemu-devel@nongnu.org; Fri, 18 Jun 2004 12:42:19 -0400 Received: from [194.212.139.6] (unknown [194.212.139.6]) by mail.contactel.cz (Postfix) with ESMTP id 60F7597210 for ; Fri, 18 Jun 2004 18:42:10 +0200 (CEST) Message-ID: <40D31B65.6090503@reactos.com> Date: Fri, 18 Jun 2004 18:42:13 +0200 From: Filip Navara MIME-Version: 1.0 Subject: Re: [Qemu-devel] Errors compiling QEMU with Mingw References: In-Reply-To: Content-Type: multipart/mixed; boundary="------------020801040801070400000004" Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org This is a multi-part message in MIME format. --------------020801040801070400000004 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Hi! I sent a patch for this few days ago. It's attached... - Filip Dean Payne wrote: >Hi, > >I have tried to compile QEMU for windows from the latest CVS using the >latest MingW and various tools. I basically followed the instructions >outlined for compiling QEMU from >http://www.h7.dion.ne.jp/~qemu-win/PortingTips-en.html. Although I can >compile the source as given there, I have no luck with the latest from CVS. > >The first error I got was >------------ >In file included from C:/dev/Dev-Cpp/include/windef.h:246, > from C:/dev/Dev-Cpp/include/windows.h:48, > from d:/sourceforge/qemu/vl.c:60: >C:/dev/Dev-Cpp/include/winnt.h:97: parse error before numeric constant >------------ > >I chased it down and it appears that the file > >qemu\target-ppc\cpu.h > >has a define on line 346 : > >#define LP SPR_ENCODE(1022) > >which conflicts with the typedef in winnt.h: > >typedef TCHAR *LPTCH,*PTSTR,*LPTSTR,*LP,*PTCHAR; > >Without knowing too much about the source I changed the #define LP to a >different symbol (hoping that it was not used elsewhere) but encountered >another error: >------------------------- >gcc -o qemu-system-ppc.exe vl.o osdep.o block.o monitor.o pci.o ppc.o ide.o >ne2000.o pckbd.o vga.o sb16.o dma.o oss.o mc146818rtc.o serial.o i8259.o >i8254.o fdc.o m48t59.o ppc_prep.o ppc_chrp.o cuda.o adb.o sdl.o >ibqemu.a -lm -lwinmm -lws2_32 -liphlpapi -L/usr/local/lib -lmingw32 -lSDLma >in -lSDL -mwindows >libqemu.a(op_helper.o)(.text+0x12b4): In function `dump_state': >d:/sourceforge/qemu/target-ppc/op_helper.c:471: undefined reference to >`stdout' >make[1]: *** [qemu-system-ppc.exe] Error 1 >make[1]: Leaving directory `/d/sourceforge/qemu/ppc-softmmu' >-------------------------- > >I am not sure whether that is due to me or simply something else. Am I going >about this the right way and can anyone offer some tips? > >Cheers > >Dean > > > > >_______________________________________________ >Qemu-devel mailing list >Qemu-devel@nongnu.org >http://lists.nongnu.org/mailman/listinfo/qemu-devel > > > > --------------020801040801070400000004 Content-Type: text/plain; name="qemu-ppc-mingw.diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="qemu-ppc-mingw.diff" diff -u -r qemu/target-ppc/cpu.h qemu.wincopy/target-ppc/cpu.h --- qemu/target-ppc/cpu.h Wed Jun 2 20:54:28 2004 +++ qemu.wincopy/target-ppc/cpu.h Tue Jun 8 20:19:10 2004 @@ -343,7 +343,8 @@ #define THRM2 SPR_ENCODE(1021) #define THRM3 SPR_ENCODE(1022) #define SP SPR_ENCODE(1021) -#define LP SPR_ENCODE(1022) +/* Conflicts with Win32 API defininition on MinGW builds */ +/* #define LP SPR_ENCODE(1022) */ #define DABR_MASK 0xFFFFFFF8 #define FPECR SPR_ENCODE(1022) #define PIR SPR_ENCODE(1023) diff -u -r qemu/target-ppc/helper.c qemu.wincopy/target-ppc/helper.c --- qemu/target-ppc/helper.c Wed Jun 2 20:54:28 2004 +++ qemu.wincopy/target-ppc/helper.c Tue Jun 8 20:29:02 2004 @@ -27,8 +27,6 @@ //#define DEBUG_BATS //#define DEBUG_EXCEPTIONS -extern FILE *stdout, *stderr; - /*****************************************************************************/ /* PPC MMU emulation */ int cpu_ppc_handle_mmu_fault (CPUState *env, uint32_t address, int rw, diff -u -r qemu/target-ppc/op_helper.c qemu.wincopy/target-ppc/op_helper.c --- qemu/target-ppc/op_helper.c Wed Jun 2 20:54:30 2004 +++ qemu.wincopy/target-ppc/op_helper.c Tue Jun 8 20:30:06 2004 @@ -464,7 +464,14 @@ /*****************************************************************************/ /* Special helpers for debug */ +#ifndef _WIN32 extern FILE *stdout; +#else +struct FILE { int opaque; }; +extern FILE (*_imp___iob)[]; +#define _iob (*_imp___iob) +#define stdout (&_iob[1]) +#endif void dump_state (void) { --------------020801040801070400000004--