
----- Original Message ----- From: Simon Peyton-Jones To: johago@web.de ; GHC bugs Sent: Monday, May 19, 2003 10:23 AM Subject: RE: building ghc from source [Redirecting this to GHC bugs] 9. Entered "./configure --host=i386-unknown-mingw32 --with-gcc=/cygdrive/c/MinGW/bin/gc c". No errors occurred. I believe your problem is here. You must not use Cygwin-style paths when specifying what GCC is. Instead use --with-gcc=c:/mingw/bin/gcc Can you let me know if that fixes it? (remove config.cache before reconfiguring) The online Building Guide is wrong on this point, but it's fixed in the repository. I'll try to get the fixed version online asap. Simon I tried to compile the current cvs sources (using the windows binary distribution of ghc-5.04.3), following your instructions. Giving a windows style path name for for the gcc executable seems to solve my (first) problem. According to Mike Thomas' and Derek Elkins' posts, I also enabled HAVE_O_BINARY in config.h. ./configure --build=i386-unknown-mingw32 --with-gcc=c:/MinGW/bin/gcc make --- snip --- [...] ../../glafp-utils/mkdependC/mkdependC -f .depend -I../../ghc/includes -s p -- -mno-cygwin -O -DTARGET_GHC -I../../ghc/includes -- GDITypes_stub_ffi.c Win3 2Bitmap_stub_ffi.c Win32Brush_stub_ffi.c Win32Clip_stub_ffi.c Win32Control_stub_ ffi.c Win32DLL_stub_ffi.c Win32Dialogue_stub_ffi.c Win32File_stub_ffi.c Win32Fon t_stub_ffi.c Win32Graphics2D_stub_ffi.c Win32HDC_stub_ffi.c Win32Icon_stub_ffi.c Win32Key_stub_ffi.c Win32MM_stub_ffi.c Win32Menu_stub_ffi.c Win32Misc_stub_ffi. c Win32NLS_stub_ffi.c Win32Palette_stub_ffi.c Win32Path_stub_ffi.c Win32Pen_stub _ffi.c Win32Process_stub_ffi.c Win32Region_stub_ffi.c Win32Registry_stub_ffi.c W in32Resource_stub_ffi.c Win32SystemInfo_stub_ffi.c Win32Types_stub_ffi.c Win32Wi nMessage_stub_ffi.c Win32Window_stub_ffi.c WndProc.c diatemp.c dumpBMP.c errors. c finalizers.c spawnProc.c ../../ghc/compiler/ghc-inplace -M -optdep-f -optdep.depend -optdep-s -optdepp -o suf o -H16m -O -cpp -fvia-C -optc-DTARGET_GHC -fglasgow-exts -package-name wi n32 -O -Rghc-timing -package lang GDITypes.hs StdDIS.hs Win32.hs Win32Bitmap.hs Win32Brush.hs Win32Clip.hs Win32Control.hs Win32DLL.hs Win32Dialogue.hs Win32Fil e.hs Win32Font.hs Win32Graphics2D.hs Win32HDC.hs Win32Icon.hs Win32Key.hs Win32M M.hs Win32Menu.hs Win32Misc.hs Win32NLS.hs Win32Palette.hs Win32Path.hs Win32Pen .hs Win32Process.hs Win32Region.hs Win32Registry.hs Win32Resource.hs Win32Spawn. hs Win32SystemInfo.hs Win32Types.hs Win32WinMessage.hs Win32Window.hs Win32Spawn.hs: can't locate import `GHC.Posix' make[2]: *** [depend] Error 1 make[1]: *** [boot] Error 1 make[1]: Leaving directory `/cygdrive/c/try6/fptools/hslibs' make: *** [build] Error 1 --- snap --- Unfortunately, module GHC.Posix doesn't exist. I read something about this module to be unavailable under mingw and that I first had to build a cygwin-ghc-inplace which supports posix and then compile mingw-ghc with it... Therefore, I try the following: ./configure --build=i686-pc-cygwin --host=i386-unknown-mingw32 omitting --with-gcc=c:/MinGW/bin/gcc Is this correct? Thanks again, Johannes johago@web.de

johago@web.de wrote:
[...] According to Mike Thomas' and Derek Elkins' posts, I also enabled HAVE_O_BINARY in config.h.
Huh? I didn't follow this thread very closely, but this sounds like a bug in GHC's aclocal.m4 (macro FPTOOLS_O_BINARY) which should be fixed. What does configure say in the line starting with: checking whether we can open files in binary mode...
[...] Unfortunately, module GHC.Posix doesn't exist. [...]
Could you try changing import GHC.Posix( FDType( RegularFile ) ) into import System.Posix.Internals( FDType( RegularFile ) ) in Win32Spawn.hs? This would be much easier. Just a guess... Cheers, S.

On Sat, 24 May 2003 14:25:14 +0200
Sven Panne
johago@web.de wrote:
[...] According to Mike Thomas' and Derek Elkins' posts, I also enabled HAVE_O_BINARY in config.h.
Huh? I didn't follow this thread very closely, but this sounds like a bug in GHC's aclocal.m4 (macro FPTOOLS_O_BINARY) which should be fixed. What does configure say in the line starting with:
checking whether we can open files in binary mode...
[...] Unfortunately, module GHC.Posix doesn't exist. [...]
Could you try changing
import GHC.Posix( FDType( RegularFile ) )
into
import System.Posix.Internals( FDType( RegularFile ) )
in Win32Spawn.hs? This would be much easier. Just a guess...
Cheers, S.
And likely unless it has been changed in the last day or so, you'll run into an error building StdDIS.(l)hs in hslibs/win32. One solution is to import GHC.ForeignPtr (newConcForeignPtr) and replace all uses of newForeignPtr with newConcForeignPtr (a better solution would probably be to use whatever is appropriate for newForeignPtr, I'd have to reread the FFI spec to see what that is, perhaps nullFunPtr works (guessing blindly))
participants (3)
-
Derek Elkins
-
johago@web.de
-
Sven Panne