Skip to content

ghci doesn't play nice with linker scripts

I'm trying to use HsHyperEstraier with ghci. I can compile and run the included examples, but when I run them in ghci, I see:

$ ghci
GHCi, version 6.8.3: http://www.haskell.org/ghc/  :? for help
Loading package base ... linking ... done.
Prelude> :l HelloWorld.hs
[1 of 1] Compiling Main             ( HelloWorld.hs, interpreted )
Ok, modules loaded: Main.
*Main> main
[...]
Loading package HsHyperEstraier-0.2.1 ... can't load .so/.DLL for: c
(/usr/lib/libc.so: invalid ELF header)

I see a similar error message if I specify '-package HsHyperEstraier' on the command line.

I did some looking and came up with these messages:

http://www.haskell.org/pipermail/glasgow-haskell-users/2004-May/006632.html http://www.nabble.com/RE:-idea-to-allow-ghci-to-use-a-different-libs-list-p1830432.html

Debian's /usr/lib/libc.so is indeed a GNU linker script, not an actual shared library. If I remove all the libraries in HsHyperEstraier's ~/.ghc/.../package.conf that are linker scripts (pthreads and c), it loads up fine.

Could ghci either recognize or ignore linker scripts?

Trac metadata
Trac field Value
Version 6.8.3
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component GHCi
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture x86_64 (amd64)
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information