ghci panic
Hi, I got the following panic message when trying to load haven into ghci, and the panic message said that I should report the problem, so here you go. :) I am using ghc 5.02.1 under Windows 2000 / Cygwin. I'd really like to be able to use ghci for Haven development, so any ideas on what might be causing this would be most welcome. I'd be happy to make the exact setup available if you'd like to reproduce the bug yourselves. -antony $ ghci HavenTest ___ ___ _ / _ \ /\ /\/ __(_) / /_\// /_/ / / | | GHC Interactive, version 5.02.1, for Haskell 98. / /_\\/ __ / /___| | http://www.haskell.org/ghc/ \/\/ /_/\/|_| Type :? for help. Loading package std ... linking ... done. Loading package lang ... linking ... done. Loading package concurrent ... linking ... done. Skipping StdDIS ( c:\greencard\gc-2.03\lib\ghc/StdDIS.hs, c:\greencar d\gc-2.03\lib\ghc/StdDIS.o ) Skipping GCJNI( c:\frp\gcjni\src/GCJNI.hs, c:\frp\gcjni\src/GCJNI.o ) Skipping JNI ( c:\frp\gcjni\src/JNI.hs, c:\frp\gcjni\src/JNI.o ) Skipping EnvM ( EnvM.hs, EnvM.o ) Skipping JNIBindings ( c:\frp\gcjni\src/JNIBindings.hs, c:\frp\gcjni\src/J NIBindings.o ) Skipping HavenJavaBindings ( HavenJavaBindings.hs, HavenJavaBindings.o ) Skipping HavenCoreJavaImpl ( HavenCoreJavaImpl.hs, HavenCoreJavaImpl.o ) Skipping HavenCore( HavenCore.hs, HavenCore.o ) Skipping HavenCoreUtils ( HavenCoreUtils.hs, HavenCoreUtils.o ) Skipping RenderM ( RenderM.hs, RenderM.o ) Skipping Haven( Haven.hs, Haven.o ) Skipping HavenTest( HavenTest.hs, ./HavenTest.o ) PEi386 object has suspiciously large string table; 64k relocs? ghc.exe: panic! (the `impossible' happened, GHC version 5.02.1): loadObj: failed Please report it as a compiler bug to [EMAIL PROTECTED], or http://sourceforge.net/projects/ghc/. Prelude -- Antony Courtney Grad. Student, Dept. of Computer Science, Yale University [EMAIL PROTECTED] http://www.apocalypse.org/pub/u/antony ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: ghci panic
Antony Courtney [EMAIL PROTECTED] writes: ... Skipping HavenTest( HavenTest.hs, ./HavenTest.o ) PEi386 object has suspiciously large string table; 64k relocs? ghc.exe: panic! (the `impossible' happened, GHC version 5.02.1): loadObj: failed Hi, this is a known issue with GHCi's linker, for which there's no good workaround for you other than to try to split up that module. If the module isn't particularly larger than any of the others, please let us know. --sigbjorn ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
ghci panic (unknown symbol stg_gc_l1)
% ghci [...] Loading package std ... linking ... /usr/lib/ghc-5.02.2/HSstd.o: unknown symbol `stg_gc_l1' ghc-5.02.2: panic! (the `impossible' happened, GHC version 5.02.2): can't load package `std' [...] (it seems) it should load package rts before std, but (it seems) it doesn't: % for i in /usr/lib/ghc-5.02.2/*.o; do nm $i | grep -q T stg_gc_l1 echo $i; done /usr/lib/ghc-5.02.2/HSrts.o % ghci -v5 [...] Using package config file: /usr/lib/ghc-5.02.2/package.conf [...] Package {name = std, import_dirs = [/usr/lib/ghc-5.02.2/imports/std], source_dirs = [], library_dirs = [/usr/lib/ghc-5.02.2], hs_libraries = [HSstd], extra_libraries = [HSstd_cbits], include_dirs = [], c_includes = [HsStd.h], package_deps = [rts], extra_ghc_opts = [], extra_cc_opts = [], [...] Loading package std ... linking ... /usr/lib/ghc-5.02.2/HSstd.o: unknown symbol `stg_gc_l1' strace -efile ghci doesn't show anything weird, except maybe: stat64(./Prelude.hs, 0xbfffcfe0) = -1 ENOENT (No such file or directory) stat64(./Prelude.lhs, 0xbfffcfe0) = -1 ENOENT (No such file or directory) stat64(./Prelude.hi-boot-5, 0xbfffcfe0) = -1 ENOENT (No such file or directory) stat64(./Prelude.hi-boot, 0xbfffcfe0) = -1 ENOENT (No such file or directory) I wanted to have a look at the code to find out what's wrong, but i can't find the time :-( ghci is built using http://people.mandrakesoft.com/~prigaux/ghc.spec where %configure is ./configure i586-mandrake-linux-gnu --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib --libexecdir=/usr/lib --localstatedir=/var/lib --sharedstatedir=/usr/com --mandir=/usr/share/man --infodir=/usr/share/info Any idea what's wrong? Thanks -- Pixel programming languages addict http://merd.net/pixel/language-study/ ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: ghci panic (unknown symbol stg_gc_l1)
Hi, GHCi doesn't load the RTS package (nor GMP), as they're both baked into the binary. My guess is that you've built ghci using 5.02.1; you need to use 5.02.2 (i.e., do two stage build.) The missing symbol was introduced in 5.02.2's RTS. hth --sigbjorn - Original Message - From: Pixel [EMAIL PROTECTED] To: [EMAIL PROTECTED] Sent: Saturday, January 26, 2002 08:07 Subject: ghci panic (unknown symbol stg_gc_l1) % ghci [...] Loading package std ... linking ... /usr/lib/ghc-5.02.2/HSstd.o: unknown symbol `stg_gc_l1' ghc-5.02.2: panic! (the `impossible' happened, GHC version 5.02.2): can't load package `std' [...] (it seems) it should load package rts before std, but (it seems) it doesn't: % for i in /usr/lib/ghc-5.02.2/*.o; do nm $i | grep -q T stg_gc_l1 echo $i; done /usr/lib/ghc-5.02.2/HSrts.o % ghci -v5 [...] Using package config file: /usr/lib/ghc-5.02.2/package.conf [...] Package {name = std, import_dirs = [/usr/lib/ghc-5.02.2/imports/std], source_dirs = [], library_dirs = [/usr/lib/ghc-5.02.2], hs_libraries = [HSstd], extra_libraries = [HSstd_cbits], include_dirs = [], c_includes = [HsStd.h], package_deps = [rts], extra_ghc_opts = [], extra_cc_opts = [], [...] Loading package std ... linking ... /usr/lib/ghc-5.02.2/HSstd.o: unknown symbol `stg_gc_l1' strace -efile ghci doesn't show anything weird, except maybe: stat64(./Prelude.hs, 0xbfffcfe0) = -1 ENOENT (No such file or directory) stat64(./Prelude.lhs, 0xbfffcfe0) = -1 ENOENT (No such file or directory) stat64(./Prelude.hi-boot-5, 0xbfffcfe0) = -1 ENOENT (No such file or directory) stat64(./Prelude.hi-boot, 0xbfffcfe0) = -1 ENOENT (No such file or directory) I wanted to have a look at the code to find out what's wrong, but i can't find the time :-( ghci is built using http://people.mandrakesoft.com/~prigaux/ghc.spec where %configure is ./configure i586-mandrake-linux-gnu --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin - -sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/ include --libdir=/usr/lib --libexecdir=/usr/lib --localstatedir=/var/lib --s haredstatedir=/usr/com --mandir=/usr/share/man --infodir=/usr/share/info Any idea what's wrong? Thanks -- Pixel programming languages addict http://merd.net/pixel/language-study/ ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: ghci panic (unknown symbol stg_gc_l1)
Sigbjorn Finne [EMAIL PROTECTED] writes: GHCi doesn't load the RTS package (nor GMP), as they're both baked into the binary. My guess is that you've built ghci using 5.02.1; you need to use 5.02.2 (i.e., do two stage build.) The missing symbol was introduced in 5.02.2's RTS. cool, rebuilding :) thanks! PS: maybe some kind of warning could be added for this case? ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs