
Something like that yes.
You're running runhaskell Setup.lhs and that loads and runs code from the Cabal library. The Cabal library depends on the process library which depends on the unix library. So by replacing the same version of the unix package you're breaking everything else which depends on it, including Cabal and thus runhaskell Setup.lhs.
So the solution is to not do that. Don't re-install the exact same version of any of the core libs that come with ghc. Adding new versions is fine, replacing existing versions is not fine because it breaks all the other packages that were already built against that package.
But Duncan, let's suppose I build "unix" putting in a "local" directory with a different version number than the released version of "unix". 1) How do I get the "local" package.conf built and populated? 2) How do I get a test case to link against this experimental local version of "unix"? Is there a "--prefix" or something like that I pass on runhaskell Setup.hs build? Regards, Vasili
Duncan