
I'm still trying to figure out how to do this on ubuntu. If this winds
up being a garden path I'll try on debian next, but at least I'm
learning a lot about getting haskell stuff built.
Anyway, since I'm on a virtualized linux box, I decided to get a fresh
start, unmounted my original OS profile and installed a fresh dapper
6.
I then changed /etc/apt/sources.list to be okay for grabbing .debs
from feisty. (No longer doing the build from source thing.)
apt-get install ghc6, ok from feisty.
(Is there another repo that gets all the extra libs at one go?)
sudo apt-cache search -o APT::Cache-Limit=25165824 ghc6 | grep -i missing
libghc6-hdbc-missingh-dev - Integration of HDBC with MissingH, GHC version
libghc6-missingh-dev - Library of utility functions for Haskell, GHC6 package
thartman@linodehaskell:~/haskellinstalls/hsh>sudo apt-cache search -o
hoorah, my apt cache search command seems ok.
sudo apt-cache search -o APT::Cache-Limit=25165824 ghc6 | grep -i hsh
thartman@linodehaskell:~/haskellinstalls/hsh>
too bad, still no hsh in ubuntu repo.
darcs get http://darcs.complete.org/hsh/
(Or should I have used something else?)
runghc Setup.hs configure
same problems as before.
But starting afresh seems to have detangled the issues I was having
with packaging confusion. At least now I can apt-get install missingh
And some other dependency following is made easier.
Finally configure for hsh works.
But then
thartman@linodehaskell:~/haskellinstalls/hsh>sudo runghc Setup.lhs install
Setup.lhs: Warning: The field "hs-source-dir" is deprecated, please
use hs-source-dirs.
Installing: /usr/local/lib/HSH-1.2.1/ghc-6.6 & /usr/local/bin HSH-1.2.1...
Setup.lhs: Error: Could not find module: HSH with any suffix: ["hi"]
So, I seem to be stuck at this point.
2007/4/2, Thomas Hartman
Well, I guess I spoke to soon. After building ghc6 from feisty as described above, I tried building missingh and have basically what I started with.
Is there something I can tweak to get the above straightened out using those nice deb packages, or do I have to do all the dependency chasing involved with building from source? Or is there another way?
If this is too debian oriented please yell at me and I will ask about this on a deb/ubuntu forum.
thanks...
Note, should have mentioned, after doing as my above post describes, I installed all the newly generated deb packages with
dpkg -i *.deb
****************
thartman@linodewhyou:~/haskellInstalls/missingh>runghc Setup.hs configure Configuring MissingH-0.18.3... configure: /usr/lib/ghc-6.6/bin/ghc-pkg configure: Dependency unix-any: using unix-1.0 Setup.hs: cannot satisfy dependency network-any
thartman@linodewhyou:~/haskellInstalls/missingh>which runghc /usr/lib/ghc-6.6/bin/runghc
# note, definitely the thing I installed today: thartman@linodewhyou:~/haskellInstalls/missingh>ls -l `which runghc` -rwxr-xr-x 1 root root 300716 Apr 2 09:17 /usr/lib/ghc-6.6/bin/runghc thartman@linodewhyou:~/haskellInstalls/missingh>
# and I installed it from deb ghc6, dpkg recognizes it
thartman@linodewhyou:~/haskellInstalls/missingh>dpkg -S /usr/lib/ghc-6.6/bin/runghc ghc6: /usr/lib/ghc-6.6/bin/runghc
# it does seem like ghc6 comes with a network package thartman@linodewhyou:~/learning/haskell>apt-cache showpkg ghc6 | grep -i network 6.4.1-2ubuntu2 - libghc6-readline-dev libghc6-stm-dev libghc6-hgl-dev libghc6-x11-dev libghc6-fgl-dev libghc6-mtl-dev libghc6-hunit-dev libghc6-quickcheck-dev libghc6-network-dev libghc6-haskell-src-dev libghc6-parsec-dev libghc6-cabal-dev libghc6-unix-dev libghc6-template-haskell-dev libghc6-haskell98-dev libghc6-base-dev libghc6-rts-dev ghc haskell-compiler
# I get lost here. Do I have libghc6-network-dev, or don't I?
thartman@linodewhyou:~/haskellInstalls/missingh>sudo apt-get install libghc6-network-dev Reading package lists... Done Building dependency tree... Done Note, selecting ghc6 instead of libghc6-network-dev ghc6 is already the newest version. You might want to run `apt-get -f install' to correct these: The following packages have unmet dependencies: hat-ghc6: Depends: ghc6 (< 6.4.1+) but 6.6-3 is to be installed libghc6-cabal-dev: Depends: ghc6 (< 6.4.2) but 6.6-3 is to be installed E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
2007/4/2, Thomas Hartman
: As you have built ghc6.6 from sources I think that you also need to build all haskell libs from sources. So, do
I did this, and got the feeling this would probably work, but is a real sad world of dependency chasing with no (clear) end in sight.
So I investigated your second suggestion
Another way is to take ghc6 and all haskell libs from fiesty.
which to me seems much preferrable.
http://old.pupeno.com/blog/unstable-packages-on-ubuntu/
Was indispensible in helping me figure out how to do this.
To give some details on this (which is really more apt packaging know how than haskell but whatever), I did something like
1) change /etc/apt/sources.list to add
deb-src http://archive.ubuntu.com/ubuntu/ feisty main restricted universe multiverse
note, only add deb-src line here, not deb line, see article above for why.
sudo aptitude install fakeroot (needed utility) fakeroot apt-get source --build ghc6 -- complains, some dependencies are missing
sudo aptitude install ..... install packages with above command, not from source. it's my first time using the aptitude command, I wonder if this does the same thing as apt-get install, which is what I usually do. Whatever the case...
fakeroot apt-get source --build ghc6
works :)
2007/3/21, Max Vasin
: >> "Thomas" == Thomas Hartman
writes: Thomas> Furthermore (as the above messages suggest and locate confirms), I Thomas> seem to have mtl already
Thomas> I took a wild guess and tried specifying this with ghc -i
Thomas> like
Thomas> sudo runghc -i/usr/lib/ghc6-mtl-dev Setup.lhs configure Thomas> and sudo runghc -i/usr/lib/ Setup.lhs configure
Thomas> but no dice.
Thomas> ***************
Thomas> thartman@linodewhyou:~/haskellInstalls/hsh$ locate libghc6-mtl-dev Thomas> /home/thartman/libghc6-mtl-dev_1.0-3_i386.deb Thomas> /usr/lib/libghc6-mtl-dev Thomas> /usr/lib/libghc6-mtl-dev/register.sh Thomas> /usr/lib/libghc6-mtl-dev/unregister.sh Thomas> /usr/share/doc/libghc6-mtl-dev Thomas> /usr/share/doc/libghc6-mtl-dev/changelog.Debian.gz Thomas> /usr/share/doc/libghc6-mtl-dev/copyright Thomas> /var/lib/dpkg/info/libghc6-mtl-dev.list Thomas> /var/lib/dpkg/info/libghc6-mtl-dev.md5sums Thomas> /var/lib/dpkg/info/libghc6-mtl-dev.postinst Thomas> /var/lib/dpkg/info/libghc6-mtl-dev.prerm
As you have built ghc6.6 from sources I think that you also need to build all haskell libs from sources. So, do
$ apt-get source libghc6-mtl-dev $ cd <haskell-mtl-or-whatever-dir-is-named> $ runhaskell Setup.lhs configure $ runhaskell Setup.lhs build $ sudo runhaskell Setup.lhs install
Another way is to take ghc6 and all haskell libs from fiesty.
-- WBR, Max Vasin.
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe