How best to make GHC 6.6 and 6.8 co-exist on one server/account

Hi, It appears some of the latest hackages are moving towards 6.8 to take advantage of the new features, while quite a few remains at 6.6. The compatibility between the two versions has been problematic. I only have 6.6 installed, but now thinking to add 6.8 to my account (so I can switch between them, depending what works where). What is the best practice to make 6.8 co-exist with 6.6 ? Specific questions are: 1) I installed 6.6 under prefix=$HOME/ghc. If I install 6.8 to the same prefix, it will overwrite 6.6. Correct? How do I get around it? 2) I installed additional tools and packages under $HOME/htools using 6.6. (Which I begin to wonder if that is necessary.) Do I have to use a different directory for 6.8? I noticed that, for each package, the path is $HOME/htools/lib/<package-ver>/ghc-6.6.1/ etc etc. It seems that 6.8 will create subdirectories, so they can co-exist peacefully. Correct? Thanks, Steve

On Sat, 2008-01-19 at 10:47 -0500, Steve Lihn wrote:
Hi, It appears some of the latest hackages are moving towards 6.8 to take advantage of the new features, while quite a few remains at 6.6. The compatibility between the two versions has been problematic. I only have 6.6 installed, but now thinking to add 6.8 to my account (so I can switch between them, depending what works where).
It should all work. I've got 3 ghc versions installed.
What is the best practice to make 6.8 co-exist with 6.6 ? Specific questions are: 1) I installed 6.6 under prefix=$HOME/ghc. If I install 6.8 to the same prefix, it will overwrite 6.6. Correct? How do I get around it?
That could be ok. Check what the layout if $HOME/ghc is. If it looks like: bin/ lib/ lib/ghc-6.6/ then that's fine and you'll be able to install another ghc to the same prefix, since the sub-dirs are versioned. You'll end up with $HOME/bin/ghc being the latest ghc, and the older version available as $HOME/ghc/bin/ghc-6.6.
2) I installed additional tools and packages under $HOME/htools using 6.6. (Which I begin to wonder if that is necessary.) Do I have to use a different directory for 6.8? I noticed that, for each package, the path is $HOME/htools/lib/<package-ver>/ghc-6.6.1/ etc etc. It seems that 6.8 will create subdirectories, so they can co-exist peacefully. Correct?
Yes. The aim is to be able to have multiple haskell implementations, multiple versions of each haskell implementations and multiple versions of each library built for any/all haskell implementation/version and to have them all co-exist peacefully. Duncan
participants (2)
-
Duncan Coutts
-
Steve Lihn