Bugs item #668705, was opened at 2003-01-15 20:12 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=108032&aid=668705&group_id=8032
Category: None Group: 5.04.2 >Status: Open Resolution: None Priority: 8 Submitted By: Antony Courtney (antonyc) Assigned to: Nobody/Anonymous (nobody) Summary: hsc2hs broken under Win32 Initial Comment: Hi, hsc2hs seems to be broken under Win32 with ghc 5.04.2. If I take a simple test program and attempt to compile it with hsc2hs, I get the following output: $ make -f Makefile.ghc-win32 hsc2hs Test.hsc Test_hsc_make.o(.text+0x2d8):Test_hsc_make.c: undefined reference to `_imp___iob ' Test_hsc_make.o(.text+0x305):Test_hsc_make.c: undefined reference to `_imp___iob ' Test_hsc_make.o(.text+0x31b):Test_hsc_make.c: undefined reference to `_imp___iob ' Test_hsc_make.o(.text+0x348):Test_hsc_make.c: undefined reference to `_imp___iob ' Test_hsc_make.o(.text+0x373):Test_hsc_make.c: undefined reference to `_imp___iob ' Test_hsc_make.o(.text+0x3a0):Test_hsc_make.c: more undefined references to `_imp ___iob' follow collect2: ld returned 1 exit status make: *** [Test.hs] Error 1 antony@AIRSTREAM ~/src/haskell/ffi/hsc2hs $ ---------------------------------------------------------------------- >Comment By: Simon Marlow (simonmar) Date: 2003-01-20 17:36 Message: Logged In: YES user_id=48280 Reopened; there appear to be some problems with hsc2hs in a standard Windows installation of GHC. What we've discovered: - By default, hsc2hs on windows uses "ghc" as the C compiler, and $(WhatGccIsCalled) as the linker, where $(WhatGccIsCalled) is set at build time and appears to be c:\mingw\bin\gcc on a system we tried it on, but might be set to "gcc" in the Windows installer distribution. - What we think ought to happen is that the default C compiler should be set to whatever GHC is installed with this version of hsc2hs, and the linker should also be set to the same thing, or at the least should point to the gcc installed along with your GHC. We don't have a suitable test framework set up to make this change now, but it ought to be addressed before the next release. ---------------------------------------------------------------------- Comment By: Antony Courtney (antonyc) Date: 2003-01-17 18:37 Message: Logged In: YES user_id=689194 If you look at the above output, you will see that it never gets as far as using any ".c files that are compiled seperately". The link errors that are reported are directly from hsc2hs attempting to compile, link and execute the .c file it produces internally (which emits a Haskell source file). Nevertheless, it turns out that using the --ld=ghc option did the trick. Thanks for pointing me in the right direction. (GHCers: Is there some reason to use default values of cc and ld that are inconsistent?) ---------------------------------------------------------------------- Comment By: Sigbjorn Finne (sigbjorn) Date: 2003-01-17 17:11 Message: Logged In: YES user_id=232905 Yes, I did. Better make sure you also use 'ghc' as your 'gcc' if you're compiling up any .c files separately. ---------------------------------------------------------------------- Comment By: Antony Courtney (antonyc) Date: 2003-01-17 17:04 Message: Logged In: YES user_id=689194 Thanks for the suggestion, Sigbjorn, but did you actually try it? I get exactly the same output regardless of whether or not I use the --cc=ghc option. ---------------------------------------------------------------------- Comment By: Sigbjorn Finne (sigbjorn) Date: 2003-01-17 16:47 Message: Logged In: YES user_id=232905 C compiler mismatch; use hsc2hs with the option --cc=ghc for better results. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=108032&aid=668705&group_id=8032 _______________________________________________ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
