Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build on Debian wheezy fails #826

Closed
nicolabotta opened this issue Jan 31, 2014 · 29 comments
Closed

Build on Debian wheezy fails #826

nicolabotta opened this issue Jan 31, 2014 · 29 comments

Comments

@nicolabotta
Copy link

[44 of 85] Compiling Control.Lens.At  ( src/Control/Lens/At.hs, dist/build/Control/Lens/At.o )
cabal: Error: some packages failed to install:
idris-0.9.10.1 depends on lens-4.0 which failed to install.
lens-4.0 failed during the building phase. The exception was:
ExitFailure 11
trifecta-1.4 depends on lens-4.0 which failed to install.
make: *** [install] Error 1

Any idea how to avoid this problem ?

@LeifW
Copy link
Contributor

LeifW commented Feb 1, 2014

Maybe we need some upper bounds restrictions on these? Mine's built on trifecta 1.2.1.1, which is built on lens 3.10. Why did lens 4.0 fail to install, anyways?

@nicolabotta
Copy link
Author

Why did lens 4.0 fail to install, anyways?

No idea. This is the output of 'cabal install -v lens':

Reading available packages...
Choosing modular solver.
Resolving dependencies...
Extracting
/home/nicola/.cabal/packages/hackage.haskell.org/lens/4.0/lens-4.0.tar.gz to
/tmp/lens-4.0-27138...
creating /tmp/lens-4.0-27138/lens-4.0/dist/setup
creating /tmp/lens-4.0-27138/lens-4.0/dist
creating /tmp/lens-4.0-27138/lens-4.0/dist/setup
/usr/bin/ghc --make /tmp/lens-4.0-27138/lens-4.0/Setup.lhs -o /tmp/lens-4.0-27138/lens-4.0/dist/setup/setup -odir /tmp/lens-4.0-27138/lens-4.0/dist/setup -hidir /tmp/lens-4.0-27138/lens-4.0/dist/setup -i -i/tmp/lens-4.0-27138/lens-4.0 -package Cabal-1.14.0
[1 of 1] Compiling Main             ( /tmp/lens-4.0-27138/lens-4.0/Setup.lhs, /tmp/lens-4.0-27138/lens-4.0/dist/setup/Main.o )
Linking /tmp/lens-4.0-27138/lens-4.0/dist/setup/setup ...
/tmp/lens-4.0-27138/lens-4.0/dist/setup/setup configure --verbose=2 --ghc
--prefix=/home/nicola/.cabal --user --flags=trustworthy
--flags=test-properties --flags=test-hunit --flags=test-hlint
--flags=test-doctests --flags=-safe --flags=-old-inline-pragmas
--flags=-lib-werror --flags=inlining --flags=-dump-splices
--flags=-benchmark-uniplate --constraint=zlib ==0.5.4.1 --constraint=void
==0.6.1 --constraint=vector ==0.9.1 --constraint=utf8-string ==0.3.7
--constraint=unordered-containers ==0.2.3.2 --constraint=transformers-compat
==0.1.1.1 --constraint=transformers ==0.3.0.0 --constraint=text ==0.11.2.3
--constraint=template-haskell ==2.8.0.0 --constraint=tagged ==0.7
--constraint=split ==0.2.1.1 --constraint=semigroups ==0.12.2
--constraint=semigroupoids ==4.0 --constraint=scientific ==0.2.0.1
--constraint=reflection ==1.4 --constraint=profunctors ==4.0.2
--constraint=primitive ==0.4.1 --constraint=parallel ==3.2.0.4
--constraint=mtl ==2.1.2 --constraint=hashable ==1.2.1.0 --constraint=ghc-prim
==0.2.0.0 --constraint=filepath ==1.3.0.0 --constraint=exceptions ==0.3.3
--constraint=distributive ==0.3.1 --constraint=contravariant ==0.4.4
--constraint=containers ==0.5.4.0 --constraint=constraints ==0.3.4.2
--constraint=comonad ==4.0 --constraint=bytestring ==0.9.2.1
--constraint=bifunctors ==4.1.1 --constraint=base ==4.5.0.0 --constraint=array
==0.4.0.0 --constraint=aeson ==0.7.0.0 --disable-tests --disable-benchmarks
Configuring lens-4.0...
Flags chosen: lib-werror=False, trustworthy=True, safe=False,
test-properties=True, test-hunit=True, test-doctests=True, test-hlint=True,
dump-splices=False, old-inline-pragmas=False, inlining=True,
benchmark-uniplate=False
Dependency aeson ==0.7.0.0: using aeson-0.7.0.0
Dependency array ==0.4.0.0: using array-0.4.0.0
Dependency base ==4.5.0.0: using base-4.5.0.0
Dependency bifunctors ==4.1.1: using bifunctors-4.1.1
Dependency bytestring ==0.9.2.1: using bytestring-0.9.2.1
Dependency comonad ==4.0: using comonad-4.0
Dependency constraints ==0.3.4.2: using constraints-0.3.4.2
Dependency containers ==0.5.4.0: using containers-0.5.4.0
Dependency contravariant ==0.4.4: using contravariant-0.4.4
Dependency distributive ==0.3.1: using distributive-0.3.1
Dependency exceptions ==0.3.3: using exceptions-0.3.3
Dependency filepath ==1.3.0.0: using filepath-1.3.0.0
Dependency ghc-prim ==0.2.0.0: using ghc-prim-0.2.0.0
Dependency hashable ==1.2.1.0: using hashable-1.2.1.0
Dependency mtl ==2.1.2: using mtl-2.1.2
Dependency parallel ==3.2.0.4: using parallel-3.2.0.4
Dependency primitive ==0.4.1: using primitive-0.4.1
Dependency profunctors ==4.0.2: using profunctors-4.0.2
Dependency reflection ==1.4: using reflection-1.4
Dependency scientific ==0.2.0.1: using scientific-0.2.0.1
Dependency semigroupoids ==4.0: using semigroupoids-4.0
Dependency semigroups ==0.12.2: using semigroups-0.12.2
Dependency split ==0.2.1.1: using split-0.2.1.1
Dependency tagged ==0.7: using tagged-0.7
Dependency template-haskell ==2.8.0.0: using template-haskell-2.8.0.0
Dependency text ==0.11.2.3: using text-0.11.2.3
Dependency transformers ==0.3.0.0: using transformers-0.3.0.0
Dependency transformers-compat ==0.1.1.1: using transformers-compat-0.1.1.1
Dependency unordered-containers ==0.2.3.2: using unordered-containers-0.2.3.2
Dependency utf8-string ==0.3.7: using utf8-string-0.3.7
Dependency vector ==0.9.1: using vector-0.9.1
Dependency void ==0.6.1: using void-0.6.1
Dependency zlib ==0.5.4.1: using zlib-0.5.4.1
Using Cabal-1.14.0 compiled by ghc-7.4
Using compiler: ghc-7.4.1
Using install prefix: /home/nicola/.cabal
Binaries installed in: /home/nicola/.cabal/bin
Libraries installed in: /home/nicola/.cabal/lib/lens-4.0/ghc-7.4.1
Private binaries installed in: /home/nicola/.cabal/libexec
Data files installed in: /home/nicola/.cabal/share/lens-4.0
Documentation installed in: /home/nicola/.cabal/share/doc/lens-4.0
Using alex version 3.0.1 found on system at: /usr/bin/alex
Using ar found on system at: /usr/bin/ar
No c2hs found
Using cpphs version 1.16 found on system at: /home/nicola/.cabal/bin/cpphs
Using ffihugs found on system at: /usr/bin/ffihugs
Using gcc version 4.7 found on system at: /usr/bin/gcc
Using ghc version 7.4.1 found on system at: /usr/bin/ghc
Using ghc-pkg version 7.4.1 found on system at: /usr/bin/ghc-pkg
No greencard found
No haddock found
Using happy version 1.18.9 found on system at: /usr/bin/happy
No hmake found
Using hpc version 0.6 found on system at: /usr/bin/hpc
Using hsc2hs version 0.67 found on system at: /usr/bin/hsc2hs
No hscolour found
Using hugs found on system at: /usr/bin/hugs
No jhc found
Using ld found on system at: /usr/bin/ld
No lhc found
No lhc-pkg found
No nhc98 found
Using pkg-config version 0.26 found on system at: /usr/bin/pkg-config
Using ranlib found on system at: /usr/bin/ranlib
Using strip found on system at: /usr/bin/strip
Using tar found on system at: /bin/tar
No uhc found
creating /tmp/lens-4.0-27138/lens-4.0/dist/setup
/tmp/lens-4.0-27138/lens-4.0/dist/setup/setup build --verbose=2
creating dist/build/autogen
creating dist/build
creating dist/build/autogen
creating dist/build
creating dist/build/autogen
Building lens-4.0...
Preprocessing library lens-4.0...
Building library...
creating dist/build
/usr/bin/ghc --make -package-name lens-4.0 -hide-all-packages -fbuilding-cabal-package -i -idist/build -isrc -idist/build/autogen -Idist/build/autogen -Idist/build -optP-DTRUSTWORTHY=1 -optP-DINLINING -optP-include -optPdist/build/autogen/cabal_macros.h -odir dist/build -hidir dist/build -stubdir dist/build -package-id aeson-0.7.0.0-5be426d1e489ceca3ecd31a8f4f1afec -package-id array-0.4.0.0-59d1cc0e7979167b002f021942d60f46 -package-id base-4.5.0.0-40b99d05fae6a4eea95ea69e6e0c9702 -package-id bifunctors-4.1.1-305e6bcf360c7c41beaa0f07e50efdce -package-id bytestring-0.9.2.1-18f26186028d7c0e92e78edc9071d376 -package-id comonad-4.0-8ade6b6c126bc25679d6f6d36cc545fb -package-id constraints-0.3.4.2-c89f28a48dbe16dd70e9532eaa2cab8e -package-id containers-0.5.4.0-e77a58da3b68c85796561e786a8f4e07 -package-id contravariant-0.4.4-62b69914af47179ed2fa5090f5c55e92 -package-id distributive-0.3.1-ed16d2dca4b361d4f98b47037bba12f6 -package-id exceptions-0.3.3-0f05360f12637af5571465cd440dc339 -package-id filepath-1.3.0.0-973f5e9fbed93e25cbe66dfeb6b99ad9 -package-id ghc-prim-0.2.0.0-c2ff696e5b8ec4d4b2bc2e42085fe471 -package-id hashable-1.2.1.0-49f08393d3f80dea063b2d7e404448a3 -package-id mtl-2.1.2-0973d74bbf4cfd12f281b730fcc93be9 -package-id parallel-3.2.0.4-04ad76ea991eb93bd2a764c097817e7a -package-id primitive-0.4.1-50546f2077956874e7dbbbcbc12aa2dc -package-id profunctors-4.0.2-5f93dc077c4e8b5aebe18c191a057107 -package-id reflection-1.4-87791a28cf8759154ae53fbb7e5f589c -package-id scientific-0.2.0.1-614871507a343684f22097cc3e6b7d2e -package-id semigroupoids-4.0-5f84bf62e863c5a1a1e09db0af0b8c0c -package-id semigroups-0.12.2-495e52531062db82c0e788d54b123de2 -package-id split-0.2.1.1-e04fd4d2abc2ebe1a6e2027542353b3c -package-id tagged-0.7-094ad10bd493732e17718144b40c5669 -package-id template-haskell-2.8.0.0-c72e39455f1035cd9a2496d5d36c3dc1 -package-id text-0.11.2.3-90dd2809780c6980c6c6abe00153893b -package-id transformers-0.3.0.0-b55e1ba0a2f0da13c35eec50d1253059 -package-id transformers-compat-0.1.1.1-073259a42bbf95f818c899c57ba5bf30 -package-id unordered-containers-0.2.3.2-d3807126cb55f50727d4a695e325792d -package-id utf8-string-0.3.7-ca3bc669f78a10f8e42ef22439bcf83c -package-id vector-0.9.1-5feabc311645326f59f50b0ea9890e1a -package-id void-0.6.1-275a400d56c47f69106adc9e75233808 -package-id zlib-0.5.4.1-778083ab4986332d3eba90345c05e587 -O -Wall -fwarn-tabs -O2 -fdicts-cheap -funbox-strict-fields -fmax-simplifier-iterations=10 -XHaskell98 Codec.Compression.Zlib.Lens Control.Exception.Lens Control.Lens Control.Lens.Action Control.Lens.At Control.Lens.Combinators Control.Lens.Cons Control.Lens.Each Control.Lens.Empty Control.Lens.Equality Control.Lens.Extras Control.Lens.Fold Control.Lens.Getter Control.Lens.Indexed Control.Lens.Internal Control.Lens.Internal.Action Control.Lens.Internal.Bazaar Control.Lens.Internal.ByteString Control.Lens.Internal.Context Control.Lens.Internal.Deque Control.Lens.Internal.Exception Control.Lens.Internal.Fold Control.Lens.Internal.Getter Control.Lens.Internal.Indexed Control.Lens.Internal.Instances Control.Lens.Internal.Iso Control.Lens.Internal.Level Control.Lens.Internal.Magma Control.Lens.Internal.Prism Control.Lens.Internal.Reflection Control.Lens.Internal.Review Control.Lens.Internal.Setter Control.Lens.Internal.TH Control.Lens.Internal.Zoom Control.Lens.Iso Control.Lens.Lens Control.Lens.Level Control.Lens.Loupe Control.Lens.Operators Control.Lens.Plated Control.Lens.Prism Control.Lens.Reified Control.Lens.Review Control.Lens.Setter Control.Lens.TH Control.Lens.Traversal Control.Lens.Tuple Control.Lens.Type Control.Lens.Wrapped Control.Lens.Zoom Control.Monad.Error.Lens Control.Monad.Primitive.Lens Control.Parallel.Strategies.Lens Control.Seq.Lens Data.Aeson.Lens Data.Array.Lens Data.Bits.Lens Data.ByteString.Lens Data.ByteString.Strict.Lens Data.ByteString.Lazy.Lens Data.Complex.Lens Data.Data.Lens Data.Dynamic.Lens Data.HashSet.Lens Data.IntSet.Lens Data.List.Lens Data.List.Split.Lens Data.Map.Lens Data.Sequence.Lens Data.Set.Lens Data.Text.Lens Data.Text.Strict.Lens Data.Text.Lazy.Lens Data.Tree.Lens Data.Typeable.Lens Data.Vector.Lens Data.Vector.Generic.Lens Generics.Deriving.Lens GHC.Generics.Lens System.Exit.Lens System.FilePath.Lens System.IO.Error.Lens Language.Haskell.TH.Lens Numeric.Lens Control.Lens.Internal.TupleIxedTH
[ 1 of 85] Compiling Data.Map.Lens    ( src/Data/Map/Lens.hs, dist/build/Data/Map/Lens.o )
[ 2 of 85] Compiling Control.Lens.Internal.TH ( src/Control/Lens/Internal/TH.hs, dist/build/Control/Lens/Internal/TH.o )
[ 3 of 85] Compiling Control.Lens.Internal.Reflection ( src/Control/Lens/Internal/Reflection.hs, dist/build/Control/Lens/Internal/Reflection.o )
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Loading package bytestring-0.9.2.1 ... linking ... done.
Loading package zlib-0.5.4.1 ... linking ... done.
Loading package array-0.4.0.0 ... linking ... done.
Loading package deepseq-1.3.0.0 ... linking ... done.
Loading package text-0.11.2.3 ... linking ... done.
Loading package hashable-1.2.1.0 ... linking ... done.
Loading package containers-0.5.4.0 ... linking ... done.
Loading package nats-0.1.2 ... linking ... done.
Loading package unordered-containers-0.2.3.2 ... linking ... done.
Loading package semigroups-0.12.2 ... linking ... done.
Loading package void-0.6.1 ... linking ... done.
Loading package utf8-string-0.3.7 ... linking ... done.
Loading package split-0.2.1.1 ... linking ... done.
Loading package tagged-0.7 ... linking ... done.
Loading package pretty-1.1.1.0 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package reflection-1.4 ... linking ... done.
Loading package transformers-0.3.0.0 ... linking ... done.
Loading package transformers-compat-0.1.1.1 ... linking ... done.
Loading package contravariant-0.4.4 ... linking ... done.
Loading package distributive-0.3.1 ... linking ... done.
Loading package mtl-2.1.2 ... linking ... done.
Loading package comonad-4.0 ... linking ... done.
Loading package semigroupoids-4.0 ... linking ... done.
Loading package profunctors-4.0.2 ... linking ... done.
Loading package parallel-3.2.0.4 ... linking ... done.
Loading package filepath-1.3.0.0 ... linking ... done.
Loading package exceptions-0.3.3 ... linking ... done.
Loading package newtype-0.2 ... linking ... done.
Loading package constraints-0.3.4.2 ... linking ... done.
Loading package bifunctors-4.1.1 ... linking ... done.
Loading package scientific-0.2.0.1 ... linking ... done.
Loading package attoparsec-0.11.1.0 ... linking ... done.
Loading package blaze-builder-0.3.1.1 ... linking ... done.
Loading package dlist-0.5 ... linking ... done.
Loading package old-locale-1.0.0.4 ... linking ... done.
Loading package syb-0.3.6.1 ... linking ... done.
Loading package time-1.4 ... linking ... done.
Loading package primitive-0.4.1 ... linking ... done.
Loading package vector-0.9.1 ... linking ... done.
Loading package aeson-0.7.0.0 ... linking ... done.
[ 4 of 85] Compiling Control.Lens.Internal.Instances ( src/Control/Lens/Internal/Instances.hs, dist/build/Control/Lens/Internal/Instances.o )
[ 5 of 85] Compiling Control.Lens.Internal.Setter ( src/Control/Lens/Internal/Setter.hs, dist/build/Control/Lens/Internal/Setter.o )
[ 6 of 85] Compiling Control.Lens.Internal.Review ( src/Control/Lens/Internal/Review.hs, dist/build/Control/Lens/Internal/Review.o )
[ 7 of 85] Compiling Control.Lens.Internal.Prism ( src/Control/Lens/Internal/Prism.hs, dist/build/Control/Lens/Internal/Prism.o )
[ 8 of 85] Compiling Control.Lens.Internal.Iso ( src/Control/Lens/Internal/Iso.hs, dist/build/Control/Lens/Internal/Iso.o )
[ 9 of 85] Compiling Control.Lens.Internal.Level ( src/Control/Lens/Internal/Level.hs, dist/build/Control/Lens/Internal/Level.o )
[10 of 85] Compiling Control.Lens.Internal.TupleIxedTH ( src/Control/Lens/Internal/TupleIxedTH.hs, dist/build/Control/Lens/Internal/TupleIxedTH.o )
[11 of 85] Compiling Control.Lens.Internal.Indexed ( src/Control/Lens/Internal/Indexed.hs, dist/build/Control/Lens/Internal/Indexed.o )
[12 of 85] Compiling Control.Lens.Internal.Context ( src/Control/Lens/Internal/Context.hs, dist/build/Control/Lens/Internal/Context.o )
[13 of 85] Compiling Control.Lens.Internal.Bazaar ( src/Control/Lens/Internal/Bazaar.hs, dist/build/Control/Lens/Internal/Bazaar.o )
[14 of 85] Compiling Control.Lens.Internal.Magma ( src/Control/Lens/Internal/Magma.hs, dist/build/Control/Lens/Internal/Magma.o )
[15 of 85] Compiling Control.Lens.Internal.Action ( src/Control/Lens/Internal/Action.hs, dist/build/Control/Lens/Internal/Action.o )
[16 of 85] Compiling Control.Lens.Internal.Getter ( src/Control/Lens/Internal/Getter.hs, dist/build/Control/Lens/Internal/Getter.o )
[17 of 85] Compiling Control.Lens.Internal.Fold ( src/Control/Lens/Internal/Fold.hs, dist/build/Control/Lens/Internal/Fold.o )
[18 of 85] Compiling Control.Lens.Internal.Zoom ( src/Control/Lens/Internal/Zoom.hs, dist/build/Control/Lens/Internal/Zoom.o )
[19 of 85] Compiling Control.Lens.Type ( src/Control/Lens/Type.hs, dist/build/Control/Lens/Type.o )
[20 of 85] Compiling Control.Lens.Setter ( src/Control/Lens/Setter.hs, dist/build/Control/Lens/Setter.o )
[21 of 85] Compiling Control.Lens.Lens ( src/Control/Lens/Lens.hs, dist/build/Control/Lens/Lens.o )
[22 of 85] Compiling Control.Lens.Loupe ( src/Control/Lens/Loupe.hs, dist/build/Control/Lens/Loupe.o )
[23 of 85] Compiling Control.Lens.Tuple ( src/Control/Lens/Tuple.hs, dist/build/Control/Lens/Tuple.o )
[24 of 85] Compiling Control.Lens.Getter ( src/Control/Lens/Getter.hs, dist/build/Control/Lens/Getter.o )
[25 of 85] Compiling Control.Lens.Review ( src/Control/Lens/Review.hs, dist/build/Control/Lens/Review.o )
[26 of 85] Compiling Control.Lens.Prism ( src/Control/Lens/Prism.hs, dist/build/Control/Lens/Prism.o )
[27 of 85] Compiling Control.Lens.Zoom ( src/Control/Lens/Zoom.hs, dist/build/Control/Lens/Zoom.o )
[28 of 85] Compiling Data.Set.Lens    ( src/Data/Set/Lens.hs, dist/build/Data/Set/Lens.o )
[29 of 85] Compiling Data.HashSet.Lens ( src/Data/HashSet/Lens.hs, dist/build/Data/HashSet/Lens.o )
[30 of 85] Compiling Control.Lens.Fold ( src/Control/Lens/Fold.hs, dist/build/Control/Lens/Fold.o )
[31 of 85] Compiling Control.Lens.Iso ( src/Control/Lens/Iso.hs, dist/build/Control/Lens/Iso.o )
[32 of 85] Compiling Control.Lens.Wrapped ( src/Control/Lens/Wrapped.hs, dist/build/Control/Lens/Wrapped.o )
[33 of 85] Compiling Control.Lens.Traversal ( src/Control/Lens/Traversal.hs, dist/build/Control/Lens/Traversal.o )
[34 of 85] Compiling Control.Lens.Indexed ( src/Control/Lens/Indexed.hs, dist/build/Control/Lens/Indexed.o )
[35 of 85] Compiling Control.Lens.Level ( src/Control/Lens/Level.hs, dist/build/Control/Lens/Level.o )
[36 of 85] Compiling Control.Lens.Reified ( src/Control/Lens/Reified.hs, dist/build/Control/Lens/Reified.o )
[37 of 85] Compiling Data.Data.Lens   ( src/Data/Data/Lens.hs, dist/build/Data/Data/Lens.o )
[38 of 85] Compiling Control.Lens.Plated ( src/Control/Lens/Plated.hs, dist/build/Control/Lens/Plated.o )
[39 of 85] Compiling Control.Lens.Equality ( src/Control/Lens/Equality.hs, dist/build/Control/Lens/Equality.o )
[40 of 85] Compiling Control.Lens.Empty ( src/Control/Lens/Empty.hs, dist/build/Control/Lens/Empty.o )
[41 of 85] Compiling Control.Lens.Each ( src/Control/Lens/Each.hs, dist/build/Control/Lens/Each.o )
[42 of 85] Compiling Control.Lens.Cons ( src/Control/Lens/Cons.hs, dist/build/Control/Lens/Cons.o )
[43 of 85] Compiling Control.Lens.Internal.Deque ( src/Control/Lens/Internal/Deque.hs, dist/build/Control/Lens/Internal/Deque.o )
[44 of 85] Compiling Control.Lens.At  ( src/Control/Lens/At.hs, dist/build/Control/Lens/At.o )
World file is already up to date.
cabal: Error: some packages failed to install:
lens-4.0 failed during the building phase. The exception was:
ExitFailure 11

@david-christiansen
Copy link
Contributor

@nicolabotta What happens if you manually insert an upper bound on lens? I'm on Debian Jessie, running lens-3.9.2.

@nicolabotta
Copy link
Author

David, I do not how to manually insert an upper bound on lens. On a Debian jessie system I get (with cabal list lens):

* lens
    Synopsis: Lenses, Folds and Traversals
    Default available version: 3.10.1
    Installed versions: 3.9.2
    Homepage: http://github.com/ekmett/lens/
    License:  BSD3

but on a wheezy system I get

* lens
    Synopsis: Lenses, Folds and Traversals
    Default available version: 4.0
    Installed versions: 3.9.1
    Homepage: http://github.com/ekmett/lens/
    License:  BSD3

I guess some package requires lens > 3.9.1 which does not require lens to be upgraded in jessie but does so in wheezy.

@david-christiansen
Copy link
Contributor

I'm really fumbling in the dark here - sorry! But what if you cabal install lens-3.9.2 ? That should install the right one, or at least give more information.

@nicolabotta
Copy link
Author

Right, it seems I cannot even reinstall lens-3.9.1. Anyway, trifecta-1.1 seems to require lens >= 3.10 (cabal info trifecta). I guess the system is screwed up it might be better to reinstall everything from scratch. Do you know if it is safe to just erase the whole ~/.cabal stuff ?

@david-christiansen
Copy link
Contributor

Typically that's fine. There might be an issue if you've changed
.cabal/config (eg to build with profiling support by default or somesuch).
I'd recommend taking a backup, nuking your .cabal directory, and try using
Cabal sandboxes to install Idris.

First, check out the Idris sources. Then, in the checked-out Idris
directory, type

cabal sandbox init

which creates a hidden subdirectory to store all your Cabal libs. Then say

cabal install --dependencies-only

to get the deps for Idris. After this, you should be able to build Idris,
and its dependencies are isolated in this checkout.

Tutorial on Cabal sandboxes:
http://coldwa.st/e/blog/2013-08-20-Cabal-sandbox.html

Best of luck!

@nicolabotta
Copy link
Author

David, thanks a lot for your support ! At this point I believe the only way to get Idris (even one of the old versions from Dec. 2013 or Jan. 2014) to install on my wheezy system is to upgrade to jessie. I have tried the sandbox way but I do not even get cabal-install-1.19.2 installed:

nicola@cirrus:~/src$ git clone git://github.com/haskell/cabal.git cabal
Cloning into 'cabal'...
remote: Reusing existing pack: 38473, done.
remote: Counting objects: 97, done.
remote: Compressing objects: 100% (93/93), done.
remote: Total 38570 (delta 55), reused 0 (delta 0)
Receiving objects: 100% (38570/38570), 22.06 MiB | 675 KiB/s, done.
Resolving deltas: 100% (21788/21788), done.
nicola@cirrus:~/src$ cd cabal/
nicola@cirrus:~/src/cabal$ cabal install Cabal/ cabal-install/
Resolving dependencies...

Cabal/Distribution/Simple.hs:135:8:
    Could not find module `System.Directory'
    There are files missing in the `directory-1.2.0.1' package,
    try running 'ghc-pkg check'.
    Use -v to see a list of the files searched for.
Downloading random-1.0.1.1...
Configuring random-1.0.1.1...
Building random-1.0.1.1...
Preprocessing library random-1.0.1.1...
[1 of 1] Compiling System.Random    ( System/Random.hs, dist/build/System/Random.o )
Registering random-1.0.1.1...
Installing library in /home/nicola/.cabal/lib/random-1.0.1.1/ghc-7.4.1
Registering random-1.0.1.1...
cabal: Error: some packages failed to install:
Cabal-1.19.2 failed during the configure step. The exception was:
ExitFailure 1
cabal-install-1.19.2 depends on Cabal-1.19.2 which failed to install.

I have reinstalled ghc and cabal-install (via apt), erased ~/.cabal and tried to build Idris after a cabal update but that seems to be hopeless, too.

I guess I'll stay with wheezy and 0.9.10.1-git:c486513 on one machine and further test 0.9.11 (under jessie) on the other machine. There anyway seem to be quite a lot of problems with 0.9.11: most of our dynamic programming framework which used to type check until the day before yesterday does no longer type check, I'll try to reproduce these failures on small scale examples.

@david-christiansen
Copy link
Contributor

Hi Nicola

I wish I could be more helpful here! I tend to run everything on jessie, so
I don't really encounter life under wheezy. Typically I don't experience
problems, so I haven't learned appropriate techniques for recovering!

Is your framework publicly available? As far as I know, you're our biggest
user - it might be interesting to get Travis to tell us when we break your
stuff. Not that we won't, but it would be useful to know in any case!

/David

@syninys
Copy link

syninys commented Feb 5, 2014

I've done a bit of digging:

On a 'fresh' [0] Debian Wheezy install, I can replicate the problem. It appears to be an incompatability between template-haskell-2.8.0.0 and lens-4.0. If I install lens-4.0 first, it works fine (with template-haskell 2.7.0.0); whereas with template-haskell-2.8.0.0 installed, lens-4.0 fails with:

[44 of 85] Compiling Control.Lens.At ( src/Control/Lens/At.hs, dist/build/Control/Lens/At.o )
cabal: Error: some packages failed to install:
lens-4.0 failed during the building phase. The exception was:
ExitFailure 11

My gut feeling, not proven at this point, is that there's something in Idris' dependancies that causes the upgrade on template-haskell, and this doesn't work with ... some combination. GHC is version 7.4.1 on debian wheezy - it wouldn't surprise me if there was a bug fixed sometime after that release that's at the root of it.

I don't know if this is one to pass on to the lens' guys; or GHC mob; but in the interim, I managed to install idris-0.9.10.1 on 'fresh' debian wheezy, thusly:

cabal update
cabal install idris-0.9.10.1
cabal install haskeline
cabal install idris-0.9.10.1

(No, no idea why the need to install haskeline in the midsts ... )

[0] Where 'fresh' means: rm -r ~/.cabal ~/.ghc

@nicolabotta
Copy link
Author

Thanks syninys, I can reproduce your findings: On a 'fresh' Debian Wheezy, idris-0.9.10.1 indeed does install (with the cabal install haskeline caveat) but idris-0.9.11.1 does not.

As you point out, template-haskell-2.8.0.0 and lens-4.0 seem to be incompatible. Whether this is the expected behavior or not I do not know.

But what I do not understand is why does idris-0.9.11.1 on Wheezy require lens-4.0 whereas on Jessie idris-0.9.11.1 seems to be perfectly happy with lens-3.9.2 ?

@edwinb
Copy link
Contributor

edwinb commented Feb 7, 2014

I don't know the answer to this, but another data point... I'm trying to install on a squeeze box (yes, I know...) with ghc 7.4.1, and I get:

[79 of 79] Compiling System.IO.Error.Lens ( src/System/IO/Error/Lens.hs, dist/build/System/IO/Error/Lens.o )

src/System/IO/Error/Lens.hs:93:1:
    Illegal type variable name: `'
    When splicing a TH declaration: _AlreadyExists :: forall . 
cabal: Error: some packages failed to install:
lens-3.9.2 failed during the building phase. The exception was:

@codygman
Copy link

codygman commented Feb 7, 2014

This could be related to the bug I had recently trying to install lens-4.0 on wheezy.

haskell/aeson#182

@codygman
Copy link

codygman commented Feb 7, 2014

Try constraints of unordered-containers >= 0.2.3.0 and adding cpphs. lens-4.0 depends on cpphs but it isn't listed in the dependencies IIRC. I believe lens-4.0.1 doesn't depend on cpphs.

@nicolabotta
Copy link
Author

So far still unable to install Idris on Debian stable:

nicola@cirrus:~/src/Idris-dev$ cabal install unordered-containers
Resolving dependencies...
All the requested packages are already installed:
unordered-containers-0.2.3.3
Use --reinstall if you want to reinstall anyway.
nicola@cirrus:~/src/Idris-dev$ cabal install cpphs
Resolving dependencies...
All the requested packages are already installed:
cpphs-1.18.2
Use --reinstall if you want to reinstall anyway.

What next ?

@LeifW
Copy link
Contributor

LeifW commented Feb 26, 2014

Working fine for me on Arch Linux. GHC 7.6.3 (which seems to come w/ template-haskell-2.8.0.0), lens-4.0.1, cpphs-1.17.1, unordered-containers-0.2.3.3.

@fabriceleal
Copy link

If I do a cabal install lens-3.9.2 --force-reinstalls I get a ExitFailure 139 after

[79 of 79] Compiling System.IO.Error.Lens ( src/System/IO/Error/Lens.hs, dist/build/System/IO/Error/Lens.o )

on a normal cabal install lens I get it on

[44 of 85] Compiling Control.Lens.At  ( src/Control/Lens/At.hs, dist/build/Control/Lens/At.o )

@glguy
Copy link
Contributor

glguy commented Mar 5, 2014

Make sure you aren't replacing the GHC-provided version of template-haskell with a user-installed one. Lens (and other packages) will fail to build against the wrong template-haskell library.

@fabriceleal
Copy link

After installing the cabal-install package (I'm on ubuntu), I downloaded the latest stable ghc (from https://www.haskell.org/ghc/download_ghc_7_6_3), and I was able to simple do

cabal install idris

without a fuss. With the 7.4.1 version which comes with cabal-install, I was unable to install idris. I was able to install lens by making sure I only had the right version of template-haskell, but as soon as I try to install idris I hit the same wall.

@ekmett
Copy link

ekmett commented Apr 19, 2014

@fabriceleal My best guess is some other dependency of idris has a lower bound on template-haskell that forces it into a version you can't use. The problem is template-haskell "succeeds" in installing, but then breaks when used.

Using

cabal install idris --constrant "template-haskell installed"

in a fresh environment on 7.4.1 should at least blame the right culprit.

We got them to patch cabal around this, so folks using cabal HEAD will be fine, so you know in 3 years or so, everyone will be having new problems rather than this one. ;) Alas, that doesn't do you any good now.

@ekmett
Copy link

ekmett commented Apr 19, 2014

On a 'fresh' [0] Debian Wheezy install, I can replicate the problem. It appears to be an incompatability between template-haskell-2.8.0.0 and lens-4.0.

It is an incompatibility between ghc 7.4.1 and template-haskell 2.8.0.0.

lens has nothing to do with it. It just happens to be the first thing using template-haskell after something else upgraded you.

@ekmett
Copy link

ekmett commented Apr 19, 2014

If we constrain ourselves to the installed template-haskell we find the real culprit:

cookie-3:idris rnorris$ cabal install --constraint 'template-haskell installed' idris
Resolving dependencies...
cabal: Could not resolve dependencies:
trying: idris-0.9.12 (user goal)
trying: trifecta-1.4.2 (dependency of idris-0.9.12)
trying: reducers-3.10.2 (dependency of trifecta-1.4.2)
trying: keys-3.10 (dependency of reducers-3.10.2)
trying: free-4.6.1 (dependency of keys-3.10)
next goal: template-haskell (dependency of free-4.6.1)
rejecting: template-haskell-2.7.0.0/installed-e0a... (conflict:
template-haskell => containers==0.4.2.1/installed-7c5..., idris =>
containers>=0.5)
rejecting: template-haskell-2.9.0.0, 2.8.0.0, 2.7.0.0, 2.6.0.0, 2.5.0.0,
2.4.0.1, 2.4.0.0, 2.3.0.1, 2.3.0.0, 2.2.0.0 (global constraint requires
installed instance)
Backjump limit reached (change with --max-backjumps).
Note: when using a sandbox, all packages are required to have consistent
dependencies. Try reinstalling/unregistering the offending packages or
recreating the sandbox.

The issue can be seen here:

(conflict: template-haskell => containers==0.4.2.1/installed-7c5..., idris => containers>=0.5)

template-haskell 2.7 was built against containers from the platform, but idris demands a version of containers that is newer. cabal then sees it needs to rebuild template-haskell, and that it can "upgrade" it, so it does so. This leads to system wide breakage of template-haskell.

If you want GHC 7.4.1 support for the platforms that shipped with it the solution would be to relax the containers dependency in idris if possible to allow containers 0.4.2.1 and patch around the missing functionality.

@Melvar
Copy link
Collaborator

Melvar commented Apr 19, 2014

As I remember it, I succeeded by forcing cabal to rebuild TH 2.7 against the newer containers version, but I don’t know if that would still work.

@ekmett
Copy link

ekmett commented Apr 19, 2014

That can work but reinstalling parts of the platform like that will break other things you can't recompile.

@LeifW
Copy link
Contributor

LeifW commented May 8, 2014

I think this might be another case of this: http://paste.debian.net/98041/
I think they were on GHC 7.4. But their cabal version looks modern, to me.
I'm guessing containers would be a blocker for them, still, but in that output, it looks like free 4.7.1 was demanding a newer template haskell? Though, keys only specifies free 4.x - so maybe it would've worked if it had chosen an older free version?
Oh, the "conflict" line in that does say "containers".

@superfunc
Copy link

I know this is old, but I thought it may be helpful to other people who may stumble upon it.

I was able to get my ghc upgraded via this guide: http://www.extellisys.com/articles/haskell-on-debian-wheezy (Crunchbang Waldorf, to be specific)

After this, I was able to easily install the most recent idris, version 0.9.15.1 via cabal.

@david-christiansen
Copy link
Contributor

Thanks for the update! Would you mind updating the Debian section of the installation instructions on the wiki? Then we can close this issue.

@superfunc
Copy link

Sure thing, just did. Feel free to close now.

@david-christiansen
Copy link
Contributor

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests