Max and Tim, Thank you for your replies, continuation below.
On Wed, 2011-04-13 at 08:27 +0100, Max Bolingbroke wrote: > On 13 April 2011 07:59, Svante Signell <[email protected]> wrote: > > As I don't know anything about Haskell, can I make a stupid question: Is > > there any method to create debug symbols for a Haskell program, and is > > it possible to debug with gdb? > > You cannot create debug symbols. Things that are possible: > > 1. You may use the -debug flag to GHC to link with the debug RTS, > which has full debugging information for GDB. Note that this only lets > you debug the *RTS*, not any of the code you wrote > > 2. Use GDB to debug your Haskell code without giving it any symbols > or understanding of the Haskell calling conventions. This is very > difficult. Information on this is on the GHC wiki: > http://hackage.haskell.org/trac/ghc/wiki/Debugging/CompiledCode?redirectedfrom=DebuggingGhcCrashes > > 3. Use the GHCi debugger, which does actually work surprisingly well: > http://www.haskell.org/ghc/docs/7.0.3/html/users_guide/ghci-debugger.html The problem is that I'm trying to bootstrap ghc to 6.10.1 using 6.8.2 under Debian GNU/Hurd. Yes, I know these packages are old but so far we only have a working 6.8.2 version and 6.10.1 is the latest version not requiring 6.10 to bootstrap. Cross-compiling is another, not yet tested, alternative. The problem is that the configure step hangs when compiling the random library, and I've tried a lot of settings, the hang is at the same place. A stripped down call is: cd libraries/random: ../cabal-bin /usr/bin/ghc6 ../bootstrapping.conf configure --verbose=3 --with-compiler =../../ghc/stage1-inplace/ghc --with-hc-pkg=../../utils/ghc-pkg/install-inplace/bin/ghc-pkg Configuring random-1.0.0.1... Creating dist (and its parents) ("../../ghc/stage1-inplace/ghc",["--numeric-version"]) ../../ghc/stage1-inplace/ghc is version 6.10.1 ("../../utils/ghc-pkg/install-inplace/bin/ghc-pkg",["--version"]) ../../utils/ghc-pkg/install-inplace/bin/ghc-pkg is version 6.10.1 ("../../ghc/stage1-inplace/ghc",["--supported-languages"]) Reading installed packages... ("../../utils/ghc-pkg/install-inplace/bin/ghc-pkg",["dump","--global"]) ^C <- hang here! The last part of the gdb backtrace shows: #5 0x011d4ce0 in __libc_read (fd=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece or DW_OP_bit_piece. ) at ../sysdeps/mach/hurd/read.c:27 #6 0x084919c8 in s9qJ_ret () #7 0x0861f842 in StgRun () #8 0x087c44e0 in ?? () I assume the calling program is cabal-bin, but no debug symbols are available. (I have debug versions of libc/gnumach/hurd installed). Setting a breakpoint in the calling program does not seem to be possible. Any hints? _______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
