> I built quite a big library and turned it into a package. It 
> works fine if
> use ghc -package gtk2 Blah.hs to compile things. But when I 
> convert all
> the libraries to object files as described in the documentation, GHCi
> refuses to load the whole machinery:
> 
> ~/source/mogul/fpDemo:$ ghci -package gtk2 Arabic.hs
>    ___         ___ _
>   / _ \ /\  /\/ __(_)
>  / /_\// /_/ / /  | |      GHC Interactive, version 5.02.2, 
> for Haskell
> 98.
> / /_\\/ __  / /___| |      http://www.haskell.org/ghc/
> \____/\/ /_/\____/|_|      Type :? for help.
> 
> Loading package std ... linking ... done.
> Loading package lang ... linking ... done.
> Loading package gtk2 ...
> 
> GHCi runtime linker: fatal error: I found a duplicate definition for
> symbol
>    gcc2_compiled.
> whilst processing object file
>    /home/as49/local/lib/gtk2hs/gtk2hs.o

I think this is due to a bug in GHCi's linker, which has been fixed post 5.02.2.  I 
tripped over it recently while trying to use Gtk+HS in GHCi on my RedHat 7.2 box.  
There are two bugs tickled by gcc 2.96: our linker wasn't dealing with sections with 
names other than the standard ones (.text, .data, .rodata) properly, and there was 
also some infelicities in the local-symbol handling (Julian S. can tell you more).

The workaround I used is to compile up any .c files in your package *without* -O, and 
without -g if you were also using that.

Cheers,
        Simon
_______________________________________________
Glasgow-haskell-users mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to