Personal tools

Lambdabot/Building

From HaskellWiki

< Lambdabot(Difference between revisions)
Jump to: navigation, search
(Building lambdabot on ghc >=6.10)
 
m (Remove reference to specific version number)
Line 50: Line 50:
 
</code>
 
</code>
   
Edit your online.rc file at ~/.cabal/share/lambdabot-4.2.2/online.rc
+
Edit your online.rc file at ~/.cabal/share/lambdabot-<version>/online.rc
 
And run lambdabot via:
 
And run lambdabot via:
 
<code>
 
<code>
lambdabot -e "rc ~/.cabal/share/lambdabot-4.2.2/online.rc"
+
lambdabot -e "rc ~/.cabal/share/lambdabot-<version>/online.rc"
 
</code>
 
</code>
   

Revision as of 18:26, 8 December 2008

Unfortunately, the packages that lambdabot depends on in hackage do not support ghc-6.10. Fortunately, the darcs repositories of most of these packages do support it.

To compile lambdabot on ghc >=6.10, follow the following steps

Get the stuff from darcs repositories:

darcs get http://code.haskell.org/HSP/haskell-src-exts
darcs get http://www.glyc.dc.uba.ar/daniel/repos/ghc-mtl
darcs get http://www.glyc.dc.uba.ar/daniel/repos/hint
darcs get http://code.haskell.org/mubot
darcs get http://code.haskell.org/lambdabot
 

Lets install haskell-src-exts from darcs (TODO: This may not actually be required, the one from hackage might be good enough):

cd haskell-src-exts
cabal install
cd ..

Install ghc-mtl:

cd ghc-mtl
cabal install
cd ..

The mueval package depends on hint prior to the "New configuration api" patch, so lets unpull that patch (and its dependents), and install hint:

cd hint
darcs unpull -p "New configuration api"
cabal install
cd ..

Install mueval:

cd mubot/mueval
cabal install
cd ../..

Apply a patch to lambdabot and install it:

cd lambdabot
wget http://www.haskell.org/sitewiki/images/e/ed/Lambdabot.patch -O -|patch -p1
cabal install
cd ..

Edit your online.rc file at ~/.cabal/share/lambdabot-<version>/online.rc
And run lambdabot via:

lambdabot -e "rc ~/.cabal/share/lambdabot-<version>/online.rc"

This may not be complete, please correct it if any more fixes are required, and as things are updated.