
I cannot seem to be able to install yi via cabal install. The error I get is as follows. I suspect alex is not installed in the correct place. ; sudo cabal install yi Resolving dependencies... Downloading yi-0.4.3... Configuring yi-0.4.3... cabal: alex version >=2.0.1 && <3 is required but it could not be found. cabal: Error: some packages failed to install: yi-0.4.3 failed during the configure step. The exception was: exit: ExitFailure 1 ; sudo cabal install alex Resolving dependencies... Downloading alex-2.2... [1 of 1] Compiling Main ( Setup.lhs, dist/setup/Main.o ) Linking dist/setup/setup ... Warning: defaultUserHooks in Setup script is deprecated. Configuring alex-2.2... Warning: No 'build-type' specified. If you do not need a custom Setup.hs or ./configure script then use 'build-type: Simple'. Preprocessing executables for alex-2.2... Building alex-2.2... [...] Linking dist/build/alex/alex ... Installing: /home/yann/.cabal/bin ; sudo cabal install yi Resolving dependencies... 'yi-0.4.3' is cached. Configuring yi-0.4.3... cabal: alex version >=2.0.1 && <3 is required but it could not be found. cabal: Error: some packages failed to install: yi-0.4.3 failed during the configure step. The exception was: exit: ExitFailure 1 -- yann@kierun.org -= H+ =- www.kierun.org PGP: 009D 7287 C4A7 FD4F 1680 06E4 F751 7006 9DE2 6318

Excerpts from Yann Golanski's message of Wed Jul 30 02:34:05 -0500 2008:
I cannot seem to be able to install yi via cabal install. The error I get is as follows. I suspect alex is not installed in the correct place. ...
Hi, cabal-install will put installed binaries in $HOME/.cabal/bin by default as far as I can tell, you should move the binary somewhere in your $PATH if you want cabal-install to pick it up for installing yi. Austin

Quoth Austin Seipp on Wed, Jul 30, 2008 at 03:45:49 -0500
Excerpts from Yann Golanski's message of Wed Jul 30 02:34:05 -0500 2008:
I cannot seem to be able to install yi via cabal install. The error I get is as follows. I suspect alex is not installed in the correct place. ...
Hi,
cabal-install will put installed binaries in $HOME/.cabal/bin by default as far as I can tell, you should move the binary somewhere in your $PATH if you want cabal-install to pick it up for installing yi.
Well, that indeed sorted that one. But still no luck: ; sudo cabal install yi Resolving dependencies... 'yi-0.4.3' is cached. Configuring yi-0.4.3... Preprocessing library yi-0.4.3... Preprocessing executables for yi-0.4.3... Building yi-0.4.3... Yi/UI/Vty.hs:42:7: Could not find module `Graphics.Vty': Use -v to see a list of the files searched for. cabal: Error: some packages failed to install: yi-0.4.3 failed during the building phase. The exception was: exit: ExitFailure 1 -- yann@kierun.org -= H+ =- www.kierun.org PGP: 009D 7287 C4A7 FD4F 1680 06E4 F751 7006 9DE2 6318

Excerpts from Yann Golanski's message of Wed Jul 30 10:59:35 +0200 2008:
Quoth Austin Seipp on Wed, Jul 30, 2008 at 03:45:49 -0500
Excerpts from Yann Golanski's message of Wed Jul 30 02:34:05 -0500 2008:
I cannot seem to be able to install yi via cabal install. The error I get is as follows. I suspect alex is not installed in the correct place. ...
Hi,
cabal-install will put installed binaries in $HOME/.cabal/bin by default as far as I can tell, you should move the binary somewhere in your $PATH if you want cabal-install to pick it up for installing yi.
Well, that indeed sorted that one. But still no luck:
; sudo cabal install yi Resolving dependencies... 'yi-0.4.3' is cached. Configuring yi-0.4.3... Preprocessing library yi-0.4.3... Preprocessing executables for yi-0.4.3... Building yi-0.4.3...
Yi/UI/Vty.hs:42:7: Could not find module `Graphics.Vty': Use -v to see a list of the files searched for. cabal: Error: some packages failed to install: yi-0.4.3 failed during the building phase. The exception was: exit: ExitFailure 1
Can you try the vty flag: $ sudo cabal install yi -fvty -- Nicolas Pouillard aka Ertai

Quoth Nicolas Pouillard on Wed, Jul 30, 2008 at 11:06:43 +0200
Excerpts from Yann Golanski's message of Wed Jul 30 10:59:35 +0200 2008:
; sudo cabal install yi Resolving dependencies... 'yi-0.4.3' is cached. Configuring yi-0.4.3... Preprocessing library yi-0.4.3... Preprocessing executables for yi-0.4.3... Building yi-0.4.3...
Yi/UI/Vty.hs:42:7: Could not find module `Graphics.Vty': Use -v to see a list of the files searched for. cabal: Error: some packages failed to install: yi-0.4.3 failed during the building phase. The exception was: exit: ExitFailure 1
Can you try the vty flag:
$ sudo cabal install yi -fvty
Sadly, I get the same error as before. What debugging output would you need? -- yann@kierun.org -= H+ =- www.kierun.org PGP: 009D 7287 C4A7 FD4F 1680 06E4 F751 7006 9DE2 6318

[problems with cabal install yi]
Curious, I tried this out, on a Debian etch box with GHC 6.8.3. "cabal update ; cabal install yi --global" complained about needing alex >=2.0.something and <3. Then "cabal install alex" happily installed alex version 2.2. Finally, "cabal install yi --global" worked fine. Is something amiss with cabal-install? Shouldn't it have automatically installed alex? Or does it only do that with libraries, by design? For that matter, "ghc-pkg list | grep -i alex" doesn't list anything, after I cabal-installed it. How does cabal verify the prerequisite alex version? (Or does it?) I'm enjoying cabal since I've begun using it, but it's still somewhat opaque to me. Regards, John Dorsey

Excerpts from John Dorsey's message of Wed Jul 30 13:58:26 -0500 2008:
Is something amiss with cabal-install? Shouldn't it have automatically installed alex? Or does it only do that with libraries, by design?
AFAICT, dependencies are only downloaded and installed if they are listed in a .cabal files 'dependency' field (providing they aren't already installed) which yes, means libraries by design. I've not had cabal-install ever track down necessary applications in my experience. As well, this issue came up on #haskell the other day and my conclusion is that no, cabal does not track down and install any *applications* that are necessary (someone tried to install yi, needed alex, build failed, and after 'cabal-install alex' everything was peachy.)
For that matter, "ghc-pkg list | grep -i alex" doesn't list anything, after I cabal-installed it. How does cabal verify the prerequisite alex version? (Or does it?)
ghc-pkg lists libraries that are registered with the ghc package manager (globally and locally); alex is simply an application, not a library, so there's really nothing for GHC to register. As for telling what version is necessary, I haven't the slightest. Duncan, can you shed some light here? Austin

Austin Seipp wrote:
For that matter, "ghc-pkg list | grep -i alex" doesn't list anything, after I cabal-installed it. How does cabal verify the prerequisite alex version? (Or does it?)
ghc-pkg lists libraries that are registered with the ghc package manager (globally and locally); alex is simply an application, not a library, so there's really nothing for GHC to register. As for telling what version is necessary, I haven't the slightest.
Slightly OT, but this division of work between cabal and ghc-pkg has always looked strange to me. Cabal knows better what meta information to store about a package, library or application. IMO the package database should reside with cabal; implementations like ghc or hugs or whatever could query cabal about the information they need (e.g. for building). Cheers Ben

On Wed, 2008-07-30 at 14:58 -0400, John Dorsey wrote:
[problems with cabal install yi]
Curious, I tried this out, on a Debian etch box with GHC 6.8.3.
"cabal update ; cabal install yi --global" complained about needing alex >=2.0.something and <3.
Then "cabal install alex" happily installed alex version 2.2. Finally, "cabal install yi --global" worked fine.
Is something amiss with cabal-install? Shouldn't it have automatically installed alex? Or does it only do that with libraries, by design?
Right, currently it only tracks library dependencies, not tools. See: http://hackage.haskell.org/trac/hackage/ticket/227 "cabal-install does consider build-tools as dependencies"
For that matter, "ghc-pkg list | grep -i alex" doesn't list anything, after I cabal-installed it.
The ghc package database is of libraries. Applications are not registered anywhere.
How does cabal verify the prerequisite alex version? (Or does it?)
It calls alex --version
I'm enjoying cabal since I've begun using it, but it's still somewhat opaque to me.
There's still plenty of work to do. You and indeed everyone else is most welcome to get involved and have a go at fixing bugs or adding frequently requested features. Easy tickets: http://hackage.haskell.org/trac/hackage/report/13 Guide to the source code: http://hackage.haskell.org/trac/hackage/wiki/SourceGuide Duncan

On Wed, 2008-07-30 at 03:45 -0500, Austin Seipp wrote:
Excerpts from Yann Golanski's message of Wed Jul 30 02:34:05 -0500 2008:
I cannot seem to be able to install yi via cabal install. The error I get is as follows. I suspect alex is not installed in the correct place. ...
Hi,
cabal-install will put installed binaries in $HOME/.cabal/bin by default as far as I can tell, you should move the binary somewhere in your $PATH if you want cabal-install to pick it up for installing yi.
Yep. See this ticket: http://hackage.haskell.org/trac/hackage/ticket/289 Of course if anyone would like to volunteer to implement this we'd all appreciate it. Duncan
participants (6)
-
Austin Seipp
-
Ben Franksen
-
Duncan Coutts
-
John Dorsey
-
Nicolas Pouillard
-
Yann Golanski