
On 13-11-03 01:46 AM, Magnus Therning wrote:
Is there already a way to get Cabal to put in an RPATH such that an *installed* executable works correctly, or is this a fairly serious bug in Cabal?
It is usually desirable to set RPATH to libs' installation locations rather than libs' build trees, and I think I prefer it too. But the exception is during "cabal test", when you should test against libs in the build tree. It is somewhat a dilemma. It is, in fact, sad that we have to set RPATH at all, and we have to because Haskell libs are not common, and they are not dumped directly into /usr/lib and /usr/local/lib. (They are, instead, scattered over /usr/local/lib/p-n/ghc-m, for wide ranges of values of p, n, and m.) If not for this, we would set no RPATH, we would do nothing special for installations, and we just had to play with LD_LIBRARY_PATH or LD_RUN_PATH or something during testing. (I would, in fact, not mind that organization, if symlinks were set up directly in /usr/local/lib. Note: the filename is already libHSp-n-ghcm.so, it already records p, n, and m, there is no clash putting that name right into /usr/local/lib alongside siblings and cousins --- well, no more clash than the /usr/local/lib/p-n/ghc-m scheme.)