Resolving dependencies... Configuring QIO-1.1... Building QIO-1.1... Preprocessing library QIO-1.1... [ 1 of 12] Compiling QIO.Vec ( QIO/Vec.hs, dist/build/QIO/Vec.o ) [ 2 of 12] Compiling QIO.QioSyn ( QIO/QioSyn.hs, dist/build/QIO/QioSyn.o ) [ 3 of 12] Compiling QIO.Qdata ( QIO/Qdata.hs, dist/build/QIO/Qdata.o ) [ 4 of 12] Compiling QIO.Heap ( QIO/Heap.hs, dist/build/QIO/Heap.o ) [ 5 of 12] Compiling QIO.QioClass ( QIO/QioClass.hs, dist/build/QIO/QioClass.o ) [ 6 of 12] Compiling QIO.VecEq ( QIO/VecEq.hs, dist/build/QIO/VecEq.o ) QIO/VecEq.hs:52:29: Could not deduce (Eq x) arising from a use of `==' from the context (Num x) bound by the type signature for vEqTimes :: Num x => x -> VecEqL x a -> VecEqL x a at QIO/VecEq.hs:51:13-52 Possible fix: add (Eq x) to the context of the type signature for vEqTimes :: Num x => x -> VecEqL x a -> VecEqL x a In the expression: l == 0 In a stmt of a pattern guard for an equation for `vEqTimes': l == 0 In an equation for `vEqTimes': l vEqTimes (VecEqL bs) | l == 0 = VecEqL [] | otherwise = VecEqL (map (\ (b, k) -> (b, l * k)) bs) Failed to install QIO-1.1 cabal: Error: some packages failed to install: QIO-1.1 failed during the building phase. The exception was: ExitFailure 1