facebook/Haxl

dependency version issue when build

Closed this issue · 4 comments

:Haxl/ (master✗) $ ./Setup configure [16:14:51]
Configuring haxl-0.3.1.0...
Setup: Encountered missing dependencies:
aeson >=0.6 && <0.12, exceptions ==0.8., text >=1.1.0.1 && <1.3
:Haxl/ (master✗) $ cabal install aeson [16:14:53]
Resolving dependencies...
All the requested packages are already installed:
aeson-0.11.2.0
Use --reinstall if you want to reinstall anyway.
:Haxl/ (master✗) $ cabal install exceptions [16:15:02]
Resolving dependencies...
All the requested packages are already installed:
exceptions-0.8.3
Use --reinstall if you want to reinstall anyway.
:Haxl/ (master✗) $ cabal install text [16:15:10]
Resolving dependencies...
All the requested packages are already installed:
text-1.2.2.1
Use --reinstall if you want to reinstall anyway.
:Haxl/ (master✗) $ ./Setup configure [16:15:17]
Configuring haxl-0.3.1.0...
Setup: Encountered missing dependencies:
aeson >=0.6 && <0.12, exceptions ==0.8.
, text >=1.1.0.1 && <1.3

Does "cabal install Haxl" not work? Manually installing the dependencies ahead of time is a non-standard way to get the dependencies to line up.
I would also recommend trying to use stackage for package management.

xich commented

@zinking What happens if you cabal configure instead of ./Setup configure? and with cabal install?

Our Setup.hs file is the bog standard one that cabal creates, so either something is weird about the installed versions you have, or there is some path issue and Cabal (the library) can't find the same packages that cabal (the executable) can.

:Haxl/ (master✗) $ cabal configure [7:40:59]
Resolving dependencies...
Configuring haxl-0.3.1.0...
:Haxl/ (master✗) $ cabal install [7:41:06]
Resolving dependencies...
Configuring haxl-0.3.1.0...
Building haxl-0.3.1.0...
Failed to install haxl-0.3.1.0
Build log ( /Users/awang/.cabal/logs/haxl-0.3.1.0.log ):
cabal: Entering directory '.'
Configuring haxl-0.3.1.0...
Building haxl-0.3.1.0...
Preprocessing library haxl-0.3.1.0...
[ 1 of 11] Compiling Haxl.Core.Util ( Haxl/Core/Util.hs, dist/build/Haxl/Core/Util.o )
[ 2 of 11] Compiling Haxl.Core.StateStore ( Haxl/Core/StateStore.hs, dist/build/Haxl/Core/StateStore.o )
[ 3 of 11] Compiling Haxl.Core.Show1 ( Haxl/Core/Show1.hs, dist/build/Haxl/Core/Show1.o )
[ 4 of 11] Compiling Haxl.Core.Types ( Haxl/Core/Types.hs, dist/build/Haxl/Core/Types.o )
[ 5 of 11] Compiling Haxl.Core.DataCache ( Haxl/Core/DataCache.hs, dist/build/Haxl/Core/DataCache.o )
[ 6 of 11] Compiling Haxl.Core.RequestStore ( Haxl/Core/RequestStore.hs, dist/build/Haxl/Core/RequestStore.o )
[ 7 of 11] Compiling Haxl.Core.Exception ( Haxl/Core/Exception.hs, dist/build/Haxl/Core/Exception.o )
[ 8 of 11] Compiling Haxl.Core.Monad ( Haxl/Core/Monad.hs, dist/build/Haxl/Core/Monad.o )
[ 9 of 11] Compiling Haxl.Core.Memo ( Haxl/Core/Memo.hs, dist/build/Haxl/Core/Memo.o )

Haxl/Core/Memo.hs:137:23: Not in scope: ‘<$>’

Haxl/Core/Memo.hs:146:23: Not in scope: ‘<$>’
cabal: Leaving directory '.'
cabal: Error: some packages failed to install:
haxl-0.3.1.0 failed during the building phase. The exception was:
ExitFailure 1

I am OSX maverix, The Glorious Glasgow Haskell Compilation System, version 7.8.3
and tried update cabal

xich commented

I just pushed some commits that should fix the build for GHC 7.8.

Sorry about that, but we don't always notice when 7.8 build is broken. I added a Travis badge to surface the build status more.

As for why cabal configure succeeds and ./Setup.hs configure doesn't, that might be a question for the Cabal folks. I'm guessing there is a path issue.