#3930: ghci does not consider library-dirs of dependent packages for dlopen()
---------------------------------+------------------------------------------
Reporter: duncan | Owner:
Type: bug | Status: new
Priority: normal | Component: Package system
Version: 6.10.4 | Keywords:
Os: MacOS X | Testcase:
Architecture: Unknown/Multiple | Failure: Other
---------------------------------+------------------------------------------
On OSX, when ghci loads a package (eg `ghci -package gtk`) it uses dlopen
on the .dynlib files specified in the package registration. However it
appears to look only in the `library-dirs` of the package itself and not
of the dependent packages.
This shows up with gtk2hs on OSX when the glib and gtk C libs are in a
non-standard location (/opt/local/lib). The glib package registration file
uses `library-dirs: /opt/local/lib` and the gtk package depend on the glib
package. The gtk package requires the C lib libgthread-2.0.dynlib. This
exists in `/opt/local/lib` however when loading the gtk package in ghci,
it does not look in `/opt/local/lib`. It only does so if we modify the gtk
registration file to specify `library-dirs: /opt/local/lib`.
This behaviour of not using the lib dirs of dependent packages is
inconsistent with the static linking case. I suspect this bad behaviour is
specific to OSX, because I think this has always worked in the gtk2hs
windows installers.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/3930>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs