Building vector with GHC HEAD

Jan Stolarek jan.stolarek at p.lodz.pl
Tue Feb 17 13:54:58 UTC 2015


That works perfectly. Thank you.

Dnia wtorek, 17 lutego 2015, Erik Hesselink napisał:
> Or [1]. The tl;dr: add "where rnf x = seq x ()" to the instance to get
> the old behavior.
>
> Erik
>
> [1] https://ghc.haskell.org/trac/ghc/wiki/Migration/7.10#deepseq-1.4.0.0
>
> On Tue, Feb 17, 2015 at 2:39 PM, Roman Cheplyaka <roma at ro-che.info> wrote:
> > See http://bit.ly/1CDVOIZ
> >
> > On 17/02/15 15:19, Jan Stolarek wrote:
> >> Devs,
> >>
> >> I'm not sure if this is the best place to ask this question but I'm
> >> almost certain someone here will have the answer. I want to build
> >> upstream master branch of vector library using GHC HEAD and cabal 1.22.
> >> Alas my attempts have failed:
> >>
> >> $ git clone git at github.com:haskell/vector.git
> >> $ cd vector
> >> $ cabal sandbox init
> >> $ cabal install -w /dane/projekty/ghc/build/inplace/bin/ghc-stage2
> >> Resolving dependencies...
> >> cabal: Could not resolve dependencies:
> >> trying: vector-0.11.0.0 (user goal)
> >> trying: base-4.8.0.0/installed-inp... (dependency of vector-0.11.0.0)
> >> next goal: deepseq (dependency of vector-0.11.0.0)
> >> rejecting: deepseq-1.4.0.0/installed-inp..., 1.4.0.0 (conflict: vector
> >> => deepseq>=1.1 && <1.4)
> >> rejecting: deepseq-1.3.0.2 (conflict: base==4.8.0.0/installed-inp...,
> >> deepseq => base>=4.3 && <4.8)
> >> trying: deepseq-1.3.0.1
> >> next goal: array (dependency of deepseq-1.3.0.1)
> >> rejecting: array-0.5.0.1/installed-inp..., 0.5.0.0 (conflict: deepseq =>
> >> array>=0.1 && <0.5)
> >> rejecting: array-0.4.0.1 (conflict: base==4.8.0.0/installed-inp...,
> >> array => base>=4.2 && <4.7)
> >> rejecting: array-0.4.0.0 (conflict: base==4.8.0.0/installed-inp...,
> >> array => base>=4.2 && <4.6)
> >> rejecting: array-0.3.0.3 (conflict: base==4.8.0.0/installed-inp...,
> >> array => base>=4.2 && <4.5)
> >> rejecting: array-0.3.0.2, 0.3.0.1 (conflict:
> >> base==4.8.0.0/installed-inp..., array => base>=4.2 && <4.4)
> >> rejecting: array-0.3.0.0 (conflict: base==4.8.0.0/installed-inp...,
> >> array => base>=3 && <4.4)
> >> rejecting: array-0.2.0.0, 0.1.0.0 (conflict:
> >> base==4.8.0.0/installed-inp..., array => base<4.3)
> >> Dependency tree exhaustively searched.
> >>
> >> The problem arises from vector requiring deepseq < 1.4 when intree
> >> package db contains deepseq 1.4. Removing the upper bound on deepseq in
> >> vector.cabal allows to resolve dependencies but ends with a build error:
> >>
> >> Data/Vector/Primitive/Mutable.hs:78:10:
> >>     No instance for (GHC.Generics.Generic (MVector s a))
> >>       arising from a use of ‘Control.DeepSeq.$gdmrnf’
> >>     In the expression: Control.DeepSeq.$gdmrnf
> >>     In an equation for ‘rnf’: rnf = Control.DeepSeq.$gdmrnf
> >>     In the instance declaration for ‘NFData (MVector s a)’
> >>
> >> Fixing this error (importing GHC.Generics & deriving `Generic` instance
> >> for `MVector s a`) leads to another one:
> >>
> >> Data/Vector/Primitive/Mutable.hs:80:10:
> >>     No instance for (Control.DeepSeq.GNFData (Rep (MVector s a)))
> >>       arising from a use of ‘Control.DeepSeq.$gdmrnf’
> >>     In the expression: Control.DeepSeq.$gdmrnf
> >>     In an equation for ‘rnf’: rnf = Control.DeepSeq.$gdmrnf
> >>     In the instance declaration for ‘NFData (MVector s a)’
> >>
> >> This time I have no idea how to fix it since GNFData is an internal
> >> class of Control.Deepseq module. Help?
> >>
> >> Aside: at first I thought vector is one of the boot libraries since it
> >> is kept in the source tree. But then I realized it is not being build
> >> during bootstrapping. Why do we keep it in the source tree then?
> >>
> >> Janek
> >>
> >> ---
> >> Politechnika Łódzka
> >> Lodz University of Technology
> >>
> >> Treść tej wiadomości zawiera informacje przeznaczone tylko dla adresata.
> >> Jeżeli nie jesteście Państwo jej adresatem, bądź otrzymaliście ją przez
> >> pomyłkę prosimy o powiadomienie o tym nadawcy oraz trwałe jej usunięcie.
> >>
> >> This email contains information intended solely for the use of the
> >> individual to whom it is addressed. If you are not the intended
> >> recipient or if you have received this message in error, please notify
> >> the sender and delete it from your system.
> >> _______________________________________________
> >> ghc-devs mailing list
> >> ghc-devs at haskell.org
> >> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
> >
> > _______________________________________________
> > ghc-devs mailing list
> > ghc-devs at haskell.org
> > http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs



---
Politechnika Łódzka
Lodz University of Technology

Treść tej wiadomości zawiera informacje przeznaczone tylko dla adresata.
Jeżeli nie jesteście Państwo jej adresatem, bądź otrzymaliście ją przez pomyłkę
prosimy o powiadomienie o tym nadawcy oraz trwałe jej usunięcie.

This email contains information intended solely for the use of the individual to whom it is addressed.
If you are not the intended recipient or if you have received this message in error,
please notify the sender and delete it from your system.


More information about the ghc-devs mailing list