
Yo ho! I just installed ghc-6.10.4 over my 6.10.3. Now 'cabal install
lhs2tex' works. Phew!
On Mon, Jul 27, 2009 at 11:44 AM, Conal Elliott
Via cabal:
--constraint='base<4'
or replace Control.Exception with Control.OldException
or add 'base < 4' to the depends in the .cabal file.
Thanks, Don.
Trying your first suggestion, I get the same result for the first and third method, and a ghc panic on cat_evals for the second method. All happening in ghc-6.10.3 installed via the Haskell Platform last week on OS X.
bash-3.2$ cabal install lhs2tex --constraint='base<4' Resolving dependencies... [1 of 1] Compiling Main ( /tmp/lhs2tex-1.1424460/lhs2tex-1.14/Setup.hs, /tmp/lhs2tex-1.1424460/lhs2tex-1.14/dist/setup/Main.o ) Linking /tmp/lhs2tex-1.1424460/lhs2tex-1.14/dist/setup/setup ... Configuring lhs2tex-1.14... cabal: Error: some packages failed to install: lhs2tex-1.14 failed during the configure step. The exception was: exit: ExitFailure 11
Still fishy about compiling Main first.
Now I'll edit add the '< 4' constraint on base, giving the same result:
bash-3.2$ dirs ~/cabal bash-3.2$ cabal unpack lhs2tex Unpacking lhs2tex-1.14... bash-3.2$ cd lhs2tex-1.14
[lhs2tex.cabal edit happens here]
bash-3.2$ cabal install Resolving dependencies... [1 of 1] Compiling Main ( Setup.hs, dist/setup/Main.o ) Linking ./dist/setup/setup ... Configuring lhs2tex-1.14... cabal: Error: some packages failed to install: lhs2tex-1.14 failed during the configure step. The exception was: exit: ExitFailure 11
Note that on linux, the package compiles without changing the base constraint. I don't know how.
Finally, use explicit ./configure & make:
bash-3.2$ ./configure bash: ./configure: Permission denied bash-3.2$ sh configure checking for ghc... /usr/bin/ghc checking for hugs... no checking for a BSD-compatible install... /usr/bin/install -c checking whether ln -s works... yes checking for mv... /bin/mv checking for cp... /bin/cp checking for rm... /bin/rm checking for mkdir... /bin/mkdir checking for touch... /usr/bin/touch checking for diff... /usr/bin/diff checking for grep... /usr/bin/grep checking for sed... /usr/bin/sed checking for sort... /usr/bin/sort checking for uniq... /usr/bin/uniq checking for find... /usr/bin/find checking for latex... /usr/local/texlive/2008/bin/universal-darwin/latex checking for pdflatex... /usr/local/texlive/2008/bin/universal-darwin/pdflatex checking for xdvi... /usr/local/texlive/2008/bin/universal-darwin/xdvi checking for gv... no checking for dvips... /usr/local/texlive/2008/bin/universal-darwin/dvips checking for kpsewhich... /usr/local/texlive/2008/bin/universal-darwin/kpsewhich checking for a texmf tree... /usr/local/texlive/2008/../texmf-local checking for texmf.cnf... yes checking for the polytable package... /usr/local/texlive/2008/texmf-dist/tex/latex/polytable/polytable.sty checking for version of polytable... 0.8.2 checking whether polytable needs to be installed... no checking for mktexlsr... /usr/local/texlive/2008/bin/universal-darwin/mktexlsr configure: creating ./config.status config.status: creating config.mk config.status: creating Version.lhs config.status: creating lhs2TeX.1 config.status: creating doc/InteractiveHugs.lhs config.status: creating doc/InteractivePre.lhs Configuration succesfully completed. Say make to compile and build documentation make bin to compile the binary only make install to (compile and) install
[edit happens here, changing Control.Exception to Control.OldException.]
bash-3.2$ ./configure bash: ./configure: Permission denied bash-3.2$ sh configure checking for ghc... /usr/bin/ghc checking for hugs... no checking for a BSD-compatible install... /usr/bin/install -c checking whether ln -s works... yes checking for mv... /bin/mv checking for cp... /bin/cp checking for rm... /bin/rm checking for mkdir... /bin/mkdir checking for touch... /usr/bin/touch checking for diff... /usr/bin/diff checking for grep... /usr/bin/grep checking for sed... /usr/bin/sed checking for sort... /usr/bin/sort checking for uniq... /usr/bin/uniq checking for find... /usr/bin/find checking for latex... /usr/local/texlive/2008/bin/universal-darwin/latex checking for pdflatex... /usr/local/texlive/2008/bin/universal-darwin/pdflatex checking for xdvi... /usr/local/texlive/2008/bin/universal-darwin/xdvi checking for gv... no checking for dvips... /usr/local/texlive/2008/bin/universal-darwin/dvips checking for kpsewhich... /usr/local/texlive/2008/bin/universal-darwin/kpsewhich checking for a texmf tree... /usr/local/texlive/2008/../texmf-local checking for texmf.cnf... yes checking for the polytable package... /usr/local/texlive/2008/texmf-dist/tex/latex/polytable/polytable.sty checking for version of polytable... 0.8.2 checking whether polytable needs to be installed... no checking for mktexlsr... /usr/local/texlive/2008/bin/universal-darwin/mktexlsr configure: creating ./config.status config.status: creating config.mk config.status: creating Version.lhs config.status: creating lhs2TeX.1 config.status: creating doc/InteractiveHugs.lhs config.status: creating doc/InteractivePre.lhs Configuration succesfully completed. Say make to compile and build documentation make bin to compile the binary only make install to (compile and) install bash-3.2$ make [...] /usr/bin/grep "^%include " Main.lhs | /usr/bin/sed -e 's,^%include ,Main.tex : ,' | /usr/bin/sort | /usr/bin/uniq > Main.ld; \ /bin/cp Main.ld Main.ldd; \ /usr/bin/sed -e 's/#.*//' -e 's/^[^:]*: *//' -e 's/ *\\$//' -e '/^$/ d' -e 's/$/ :/' < Main.ldd >> Main.ld; \ /bin/rm -f Main.ldd /usr/bin/ghc -O --make -o lhs2TeX Main.lhs [ 1 of 19] Compiling Document ( Document.lhs, Document.o ) [ 2 of 19] Compiling Auxiliaries ( Auxiliaries.lhs, Auxiliaries.o ) [ 3 of 19] Compiling StateT ( StateT.lhs, StateT.o ) [ 4 of 19] Compiling Verbatim ( Verbatim.lhs, Verbatim.o ) [ 5 of 19] Compiling Value ( Value.lhs, Value.o ) [ 6 of 19] Compiling FiniteMap ( FiniteMap.lhs, FiniteMap.o ) [ 7 of 19] Compiling TeXCommands ( TeXCommands.lhs, TeXCommands.o ) [ 8 of 19] Compiling HsLexer ( HsLexer.lhs, HsLexer.o ) [ 9 of 19] Compiling TeXParser ( TeXParser.lhs, TeXParser.o ) [10 of 19] Compiling Parser ( Parser.lhs, Parser.o ) [11 of 19] Compiling Directives ( Directives.lhs, Directives.o ) [12 of 19] Compiling Typewriter ( Typewriter.lhs, Typewriter.o ) [13 of 19] Compiling MathCommon ( MathCommon.lhs, MathCommon.o ) [14 of 19] Compiling MathPoly ( MathPoly.lhs, MathPoly.o ) [15 of 19] Compiling NewCode ( NewCode.lhs, NewCode.o ) [16 of 19] Compiling Math ( Math.lhs, Math.o ) [17 of 19] Compiling FileNameUtils ( FileNameUtils.lhs, FileNameUtils.o ) [18 of 19] Compiling Version ( Version.lhs, Version.o ) [19 of 19] Compiling Main ( Main.lhs, Main.o ) ghc: panic! (the 'impossible' happened) (GHC version 6.10.3 for i386-apple-darwin): cat_evals base:GHC.Arr.Array{d rau} [ww{v aFwM} [lid], ww1{v aFwN} [lid], ww2{v aFwO} [lid]] [!, !, _, _]
Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
make: *** [lhs2TeX] Error 1 bash-3.2$
Hm! Gremlins.
- Conal
On Mon, Jul 27, 2009 at 11:22 AM, Don Stewart
wrote: Fails during configuration:
bash-3.2$ cabal install lhs2tex Resolving dependencies... [1 of 1] Compiling Main ( /tmp/lhs2tex-1.1423397/lhs2tex-1.14/ Setup.hs, /tmp/lhs2tex-1.1423397/lhs2tex-1.14/dist/setup/Main.o ) Linking /tmp/lhs2tex-1.1423397/lhs2tex-1.14/dist/setup/setup ... Configuring lhs2tex-1.14... cabal: Error: some packages failed to install: lhs2tex-1.14 failed during the configure step. The exception was: exit: ExitFailure 11
Note that the the first module to be compiled is Main. On my linux machine, Main is the *last* of several modules to be compiled.
Here's my failure log: http://moonpatio.com/fastcgi/hpaste.fcgi/view?id=3096# a3096 .
If instead I use ./configure and make, i get errors due to use of the
conal: old
Exception API:
... [17 of 19] Compiling FileNameUtils ( FileNameUtils.lhs, FileNameUtils.o )
FileNameUtils.lhs:81:35: Ambiguous type variable `b' in the constraint: `GHC.Exception.Exception b' arising from a use of `catch' at FileNameUtils.lhs:(81,35)-(89,60) Probable fix: add a type signature that fixes these type variable(s) ...
Suggestions greatly appreciated!
Via cabal:
--constraint='base<4'
or replace Control.Exception with Control.OldException
or add 'base < 4' to the depends in the .cabal file.
-- Don