Building vector with GHC HEAD

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


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.


More information about the ghc-devs mailing list