[GHC] #10352: Properly link Haskell shared libs on all systems
GHC
ghc-devs at haskell.org
Sun Sep 11 21:45:32 UTC 2016
#10352: Properly link Haskell shared libs on all systems
-------------------------------------+-------------------------------------
Reporter: duncan | Owner: Phyx-
Type: task | Status: new
Priority: normal | Milestone: 8.2.1
Component: Compiler | Version: 7.11
(Linking) |
Resolution: | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking: 5987
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Phyx-):
It turns out that this is slightly tricky on Linux as well. It seems that
the `WRAPPER` scripts generated by `utils/ghc-cabal/Main.hs` is also
setting the `LD_LIBRARY_PATH` value to each dependency of the wrapped
application.
Previously for the RTS this was easy because all of the `RTS .so` were all
in the same folder so it hardcoded `lib/ghc-${ver}/rts-1.0/` in the
`LD_LIBRARY_PATH`.
This presents the obvious question now, what to do with the RTS.
Previously because the names were different and they're all in the same
subdirectory you could just add the parent and the platform loaded would
load the .so based on the filename.
The problem is, I have no way of telling, from within the compiled program
which RTS you actually intended to use. If I can't do that I can't add the
new rts directories to the library path.
Any suggestions?
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10352#comment:19>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list