
I can reproduce the issue on Linux with a GHC that has the #10458 patch:
{{{ GHCi, version 7.10.3: http://www.haskell.org/ghc/ :? for help ghc: panic! (the 'impossible' happened) (GHC version 7.10.3 for x86_64-unknown-linux): Loading temp shared object failed: /tmp/ghc29316_0/libghc_25.so: undefined symbol: tt_driver_class }}}
I see a different symbol missing but the missing symbol should come from `freetype2`, too.
Redesign of dynamic linking should fix this. So marking as blocked on
#11499: Loading temp shared object failed in GHCi -------------------------------------+------------------------------------- Reporter: alfa07 | Owner: trommler Type: bug | Status: new Priority: normal | Milestone: Component: GHCi | Version: 7.10.3 Resolution: | Keywords: dynamic | linking Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: GHCi crash | Test Case: Blocked By: 11238 | Blocking: Related Tickets: #10458 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by trommler): * owner: => trommler Comment: Replying to [comment:9 trommler]: that ticket. I think I understand what is going on. The undefined symbols are provided by a package that is loaded at startup. Because we need to load (`dlopen`)with `RTLD_LOCAL` those symbols are not available in the temporary shared object. This will be fixed with the new design proposed in #11238. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11499#comment:10 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler