On 09/16/12 22:43, Matthias Kilian wrote:
> Hi,
>
> On Sun, Sep 16, 2012 at 10:16:40PM +0100, Nigel Taylor wrote:
>> Message-ID: <[email protected]>
>> Date: Sun, 16 Sep 2012 22:16:40 +0100
>> From: Nigel Taylor <[email protected]>
>> To: ports <[email protected]>
>> Subject: Re: hs-* fallout, some notes about ghc
>>
>> On 09/08/12 22:22, Matthias Kilian wrote:
>>> Please be aware that the patch is *not* a proper fix but rather a
>>> quick hack. I only want to see wether it's worth patching ghc's
>>> internal linker at all. The other option would be to enable shared
>>> haskell libraries.
> [...]
>> Missed the e-mail on @ports till mentioned on icb, have only just tried this
>>
>> I applied the patches to both amd64 and i386, the two failing ports
>> hs-vector and hs-type-level built on i386, not on amd64.
>
> Thanks for the tests.
>
> On amd64, did you still get messages like
>
> Loading package integer-gmp ... linking ... ghc: /usr/local/lib/libgmp.a:
> unknown symbol `__guard_local'
>
> or just segfaults? (I'd expect the latter).
>
> Anyway, I tried to understand ghc's own runtime linker this day,
> and got lost in #ifdef hell, so I'll probably just enable shared
> libraries in ghc (in the hope that ghci will use dlopen(3) to load
> hs-libraries).
>
> Ciao,
> Kili
>
This is from log...
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Loading package array-0.4.0.0 ... linking ... done.
Loading package deepseq-1.3.0.0 ... linking ... done.
Loading package containers-0.4.2.1 ... linking ... done.
Loading package pretty-1.1.1.0 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package syb-0.3.6.1 ... linking ... done.
src/Data/TypeLevel/Num/Aliases.hs:24:1:
Warning: The import of `Data.TypeLevel.Num.Reps' is redundant
except perhaps to import instances from `Data.TypeLevel.Num.Reps'
To import instances alone, use: import Data.TypeLevel.Num.Reps()
[5 of 8] Compiling Data.TypeLevel.Bool ( src/Data/TypeLevel/Bool.hs,
dist/build/Data/TypeLevel/Bool.o )
[6 of 8] Compiling Data.TypeLevel.Num.Ops ( src/Data/TypeLevel/Num/Ops.hs,
dist/build/Data/TypeLevel/Num/Ops.o )
[7 of 8] Compiling Data.TypeLevel.Num ( src/Data/TypeLevel/Num.hs,
dist/build/Data/TypeLevel/Num.o )
[8 of 8] Compiling Data.TypeLevel ( src/Data/TypeLevel.hs,
dist/build/Data/TypeLevel.o )
Linking...
/usr/bin/ar -r dist/build/libHStype-level-0.2.4.a dist/build/Data/TypeLevel.o
dist/build/Data/TypeLevel/Bool.o dist/build/Data/TypeLevel/Num.o
dist/build/Data/TypeLevel/Num/Reps.o dist/build/Data/TypeLevel/Nu
m/Aliases.o dist/build/Data/TypeLevel/Num/Sets.o
dist/build/Data/TypeLevel/Num/Ops.o dist/build/Data/TypeLevel/Num/Aliases/TH.o
/usr/bin/ar: creating dist/build/libHStype-level-0.2.4.a
/usr/bin/ld -x -r -o dist/build/HStype-level-0.2.4.o
dist/build/Data/TypeLevel.o dist/build/Data/TypeLevel/Bool.o
dist/build/Data/TypeLevel/Num.o dist/build/Data/TypeLevel/Num/Reps.o
dist/build/Data/TypeLevel
/Num/Aliases.o dist/build/Data/TypeLevel/Num/Sets.o
dist/build/Data/TypeLevel/Num/Ops.o dist/build/Data/TypeLevel/Num/Aliases/TH.o
Registering type-level-0.2.4...
/usr/local/bin/ghc-pkg update - --global --no-user-package-conf
--package-conf=dist/package.conf.inplace
Running Haddock for type-level-0.2.4...
Warning: The documentation for the following packages are not installed. No
links will be generated to these packages: rts-1.0
Preprocessing library type-level-0.2.4...
haddock: /usr/local/lib/libgmp.a: unknown symbol `__guard_local'
Haddock coverage:
100% ( 13 / 13) in 'Data.TypeLevel.Num.Reps'
100% ( 6 / 6) in 'Data.TypeLevel.Num.Sets'
67% ( 2 / 3) in 'Data.TypeLevel.Num.Aliases.TH'
haddock: unable to load package `integer-gmp'
I didn't look closely at the log just saw the error from dpb, log has a
different message,
from haddock, maybe I needed to rebuild haddock and other ghc packages.
Looks like it got past load integer-gmp, which failed before.
Checked i386 haddock was built after ghc, amd64 haddock built before ghc.
Rebuilt haddock on amd64, then both hs-vector hs-type-level built.
Needed a bump in ghc to force rebuild of haddock.