Running GHC 6.10.* on OpenBSD

Hello list. Up to now I've only used binary versions of GHC, but since my operating system's (OpenBSD) version of GHC is lagging behind (currently at 6.6.1), I need to update it. I tried using my system's ghc-6.6.1 to compile ghc-6.10.4 but it failed due to haskeline not being installed (and trying to install it also failed). I managed (woohoo!) to compile 6.8.3 using 6.6.1, but I could still not use 6.8.3 to compile 6.10.4. Even though I have installed haskeline using cabal in 6.8.3, the making of 6.10.4 breaks with the (weird?) message: cabal-bin: At least the following dependencies are missing: haskeline -any On the same machine (it's a laptop), I also have a partition with ubuntu linux installed (which has ghc-6.10.4 installed). So I thought I should try cross compiling, following the instrucions at the Porting wiki page. But this also failed at the first steps, with the complaint: GHC configuration does not support differing host/target (i.e. cross-compiling). Any suggestions / website links? Also, I understand what --host and --target are supposed to be, but I'm not clear on --build. Is there a more detailed document on building GHC, other than the Porting wiki? Thanks. P.S. I don't really use the ubuntu linux partition, so if there is an easier alternative that needs to install another system, I can do it over ubuntu's partition. -- Thanos Tsouanas http://mpla.math.uoa.gr/~thanos/

Thanos Tsouanas wrote:
Hello list.
Up to now I've only used binary versions of GHC, but since my operating system's (OpenBSD) version of GHC is lagging behind (currently at 6.6.1), I need to update it. I tried using my system's ghc-6.6.1 to compile ghc-6.10.4 but it failed due to haskeline not being installed (and trying to install it also failed).
Hello, it's already a long time since I installed ghc-6.10.3.20090530 on my OpenBSD/amd64, but IIRC I really used system provided compiler and IIRC I somehow managed to first install everything what's required on system provided 6.6.1 to compile 6.10. I'm not sure if I went step by step 6.6.1->6.8.3->6.10.3 as you try. Anyway I'm writing just to let you know that it was somehow possible in the past and that you shall perhaps concentrate on why it fails on your box. IMHO cross-compilation is no go in this case since I hope I'm right assuming this is not supported in 6.10, but was fixed in 6.12 again. In the worst case I can provide you my binary if your platform is the same, but it's 300MB unpacked tree so it'll take some time to pack and upload somewhere for you. Good luck! Karel

On Sat, Dec 12, 2009 at 09:22:56AM +0100, Karel Gardas wrote:
I somehow managed to first install everything what's required on system provided 6.6.1 to compile 6.10. I'm not sure if I went step by step 6.6.1->6.8.3->6.10.3 as you try.
No need for 6.8, you can build 6.10 straight with 6.6.
IMHO cross-compilation is no go in this case since I hope I'm right assuming this is not supported in 6.10, but was fixed in 6.12 again.
Kind of. There are still issues with *real* porting to other platforms (#3472, probably more), but it's possible to create hc bootstrapping filesets and use them to bootstrap on the same platform. Even if this sounds kind of useless, it'll help a lot updating the OpenBSD port. Ciao, Kili

On Sat, Dec 12, 2009 at 11:23 AM, Matthias Kilian
On Sat, Dec 12, 2009 at 09:22:56AM +0100, Karel Gardas wrote:
I somehow managed to first install everything what's required on system provided 6.6.1 to compile 6.10. I'm not sure if I went step by step 6.6.1->6.8.3->6.10.3 as you try.
No need for 6.8, you can build 6.10 straight with 6.6.
Ok, I guess I didn't try hard enough..
IMHO cross-compilation is no go in this case since I hope I'm right assuming this is not supported in 6.10, but was fixed in 6.12 again.
Kind of. There are still issues with *real* porting to other platforms (#3472, probably more), but it's possible to create hc bootstrapping filesets and use them to bootstrap on the same platform. Even if this sounds kind of useless, it'll help a lot updating the OpenBSD port.
Then it's worth a shot. How would I create those hc bootstrapping filesets? Using the system's ghc-6.6.1? P.S. Thanks for the scripts and for mentioning darcs-all in your other mail. They sure are helpful :) -- Thanos Tsouanas http://mpla.math.uoa.gr/~thanos/

On Sat, Dec 12, 2009 at 03:29:09PM +0200, Thanos Tsouanas wrote:
No need for 6.8, you can build 6.10 straight with 6.6.
Ok, I guess I didn't try hard enough..
Probably just --with-iconv-includes=/usr/local/include \ --with-iconv-libraries=/usr/local/lib missing to ./configure. Everything else should work fine nowadays.
IMHO cross-compilation is no go in this case since I hope I'm right assuming this is not supported in 6.10, but was fixed in 6.12 again.
Kind of. There are still issues with *real* porting to other platforms (#3472, probably more), but it's possible to create hc bootstrapping filesets and use them to bootstrap on the same platform. Even if this sounds kind of useless, it'll help a lot updating the OpenBSD port.
Then it's worth a shot. How would I create those hc bootstrapping filesets? Using the system's ghc-6.6.1?
If all you want is a working ghc-6.10, please don't waste your time with bootstrapping filesets. Just use ghc-6.6.1 and build ghc-6.10 from it (and, if you want to, build ghc-6.12 from ghc-6.10). BTW: if you're using my scripts, you'll probably also have to install (apart from ghc-6.6.1) alex, darcs, gmake, haddock, happy, hscolour and python (version 2.5). All available as precompiled packages for OpenBSD (amd64 and i386). Ciao, Kili

On Sat, Dec 12, 2009 at 4:03 PM, Matthias Kilian
On Sat, Dec 12, 2009 at 03:29:09PM +0200, Thanos Tsouanas wrote:
No need for 6.8, you can build 6.10 straight with 6.6.
Ok, I guess I didn't try hard enough..
Probably just --with-iconv-includes=/usr/local/include \ --with-iconv-libraries=/usr/local/lib missing to ./configure. Everything else should work fine nowadays.
[..snip..]
If all you want is a working ghc-6.10, please don't waste your time with bootstrapping filesets. Just use ghc-6.6.1 and build ghc-6.10 from it (and, if you want to, build ghc-6.12 from ghc-6.10).
I had added these options to ./configure indeed, but still had problems. I think the problem was haskeline. Anyway, I'll try again, and post more details.
BTW: if you're using my scripts, you'll probably also have to install (apart from ghc-6.6.1) alex, darcs, gmake, haddock, happy, hscolour and python (version 2.5). All available as precompiled packages for OpenBSD (amd64 and i386).
Yeap, have them all installed already :) -- Thanos Tsouanas http://mpla.math.uoa.gr/~thanos/

On Sat, Dec 12, 2009 at 05:30:44AM +0200, Thanos Tsouanas wrote:
Up to now I've only used binary versions of GHC, but since my operating system's (OpenBSD) version of GHC is lagging behind (currently at 6.6.1), I need to update it. I tried using my system's ghc-6.6.1 to compile ghc-6.10.4 but it failed due to haskeline not being installed (and trying to install it also failed).
I don't know wether the release tarball contains haskeline, but you could always download the sources via darcs and use the darcs-all script from the ghc tree to fetch all necessary libraries. Here are some scripts I'm using to build all kinds of ghc versions (6.10, 6.12, head, bootstrapping stuff etc.): http://darcs.volkswurst.de/build/ You may have to edit the scripts for your purposes. Or just wait for an update of the port ;-) Ciao, Kili

On Sat, Dec 12, 2009 at 05:30:44AM +0200, Thanos Tsouanas wrote:
Up to now I've only used binary versions of GHC, but since my operating system's (OpenBSD) version of GHC is lagging behind (currently at 6.6.1), I need to update it. I tried using my system's ghc-6.6.1 to compile ghc-6.10.4 but it failed due to haskeline not being installed (and trying to install it also failed).
If Haskeline continues to make trouble (it seems to at least contribute to the crashing of GHCi on PowerPC), you could try to do a build without GHCi first --- Haskeline is not needed for the compiler. (I haven't tried that yet myself, since it only crashes at runtime.) Wolfram
participants (4)
-
kahl@cas.mcmaster.ca
-
Karel Gardas
-
Matthias Kilian
-
Thanos Tsouanas