mad.one: > Recently I've been developing my IRC bot a little further, and in the > midst of it I have come across a very problematic issue that revolves > around GHC-dependencies vs. application-dependencies. The central issue > is ByteString. > > Currently, the ghc package depends on bytestring-0.9.0.1. However, the > current version of ByteString I have installed is 0.9.0.4. To keep > compatability with bytestring-dependent libraries that were built > against 0.9.0.1, you have to recompile of all these libs against > 0.9.0.4. For example, I had to build a newer version of zlib against > 0.9.0.4, because the older version was built for 0.9.0.1, which mean > that it was not possible to build cabal-install because of the > incompatabilities (it needed bytestring and zlib.) > > The problem is that if you have a package that depends on ghc as a > library, but also depends on bytestring > 0.9.0.1 or any library built > against it, you'll get pretty much unstoppable linker errs, since all the > symbol names in the ghc package are hardwired for 0.9.0.1 (meaning you > can't do 'ghc-pkg update' for it) forcing it to be loaded.
It should be possible to specify that your lib depends on exactly 0.9.0.1 in the .cabal file. -- Don _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe