Just to bring this one up-to-date -- Nathan Sidwell contributed a BFD patch a couple of weeks ago which looks as if it fixes the bug referred to below. So, once that fix percolates through to a mingw release, this manual splitting up of object files should be a thing of the past for GHC package builders on win32.
--sigbjorn ----- Original Message ----- From: "Sigbjorn Finne" <[EMAIL PROTECTED]> To: "Pasch, Thomas (ACTGRO)" <[EMAIL PROTECTED]> Cc: <[EMAIL PROTECTED]> Sent: Friday, October 24, 2003 15:17 Subject: Re: Overflown relocs in ghci > Hi, > > it looks as if you're running into a GNU ld/BFD bug > where it emits bogus PE object files that have more than > 0xffff relocations. The last time I looked this bug still > wasn't fixed in the BFD codebase & there wasn't any > noticeable interest in fixing it when I reported the bug > a year or two ago. > > The workaround is to split up the .o files that make up > your package into two or more .o's, along the lines of > how the "base" package does it. > > hth > --sigbjorn > > Pasch, Thomas (ACTGRO) wrote: > > Hello, > > > > I'm working at the haskell-java bridge win32 port > > (http://sourceforge.net/projects/jvm-bridge). I'm > > using a recent MinGW installation and a ghc > > 6.0.1. I can build tests in the Examples directory > > without a problem. But when using ghci, I got > > the following: > > > > $ ghci -package javavm > > ___ ___ _ > > / _ \ /\ /\/ __(_) > > / /_\// /_/ / / | | GHC Interactive, version 6.0.1, for > > Haskell 98. / /_\\/ __ / /___| | http://www.haskell.org/ghc/ > > \____/\/ /_/\____/|_| Type :? for help. > > > > Loading package base ... linking ... done. > > Loading package lang ... linking ... done. > > Loading package concurrent ... linking ... done. > > Loading package haskell98 ... linking ... done. > > Loading package javavm ... linking ... Overflown relocs: 4 > > done. > > Prelude> :q > > Leaving GHCi. > > > > What does "Overflown relocs" mean? It seems to be > > a problem, because when I try to load HelloWorld.hs: > > > > Prelude> :load HelloWorld.hs > > Skipping Class_java_io_PrintStream ( Class_java_io_PrintStream.hs, > > ./Class_java > > _io_PrintStream.o ) > > Skipping Class_java_lang_System ( Class_java_lang_System.hs, > > ./Class_java_lang_ > > System.o ) > > Skipping HelloWorld_JVM ( HelloWorld_JVM.hs, ./HelloWorld_JVM.o ) > > Skipping Main ( HelloWorld.hs, ./HelloWorld.o ) > > Ok, modules loaded: Main, HelloWorld_JVM, Class_java_lang_System, > > Class_java_io_ > > PrintStream. > > Prelude Main> main > > > > ./HelloWorld.o: unknown symbol `___stginit_HelloWorldzuJVM_' > > > > Sincerly, > > > > Thomas > > > > _______________________________________________ > Glasgow-haskell-bugs mailing list > [EMAIL PROTECTED] > http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs _______________________________________________ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs