
On 06 November 2005 20:31, Ed Osinski wrote:
I'm trying to install GHC and related software under Solaris 9 and am stuck at HSQL. I initially used the binary package of ghc 6.4.1. It installed w/o any problems, and I was able to build alex, happy, haddock and cpphs. However, when trying to install HSQL-1.6, it complained about "ld" not recognizing "-x". I guess this is due to the binary package for Solaris being built on a machine that used the GNU linker, which recognizes "-x"? Anyway, this led me to build ghc 6.4.1 from source, with gcc 4.0.2, which was successful. :-) However, when I try to install HSQL-1.6, it dies during the build step. :-(
Here is the output:
/sware/build/HSQL-1.6/HSQL |> runghc Setup.lhs configure Warning: No license-file field. Configuring hsql-1.6... configure: searching for ghc in path. configure: found ghc at /usr/local/bin/ghc configure: looking for package tool: ghc-pkg near compiler in /usr/local/bin/ghc configure: found package tool in /usr/local/bin/ghc-pkg configure: Using install prefix: /usr/local configure: Using compiler: /usr/local/bin/ghc configure: Compiler flavor: GHC configure: Compiler version: 6.4.1 configure: Using package tool: /usr/local/bin/ghc-pkg configure: Using haddock: /usr/local/bin/haddock configure: Using happy: /usr/local/bin/happy configure: Using alex: /usr/local/bin/alex configure: Using hsc2hs: /usr/local/bin/hsc2hs configure: Using cpphs: /usr/local/bin/cpphs configure: Reading installed packages... configure: Dependency base-any: using base-1.0 /sware/build/HSQL-1.6/HSQL |> runghc Setup.lhs build Preprocessing library hsql-1.6... Building hsql-1.6... Chasing modules from: Database.HSQL,Database.HSQL.Types Compiling Database.HSQL.Types ( ./Database/HSQL/Types.hs, dist/build/./Database/HSQL/Types.o ) Compiling Database.HSQL ( ./Database/HSQL.hs, dist/build/./Database/HSQL.o ) *** Exception: waitForProcess: interrupted (Interrupted system call)
This error happens consistently, but sometimes one line earlier. Googling reveals that at least one person encountered this exception on Solaris in the recent past:
I think this means that GHC crashed. waitForProcess throws the "interrupted" exception whenever the sub-process it is waiting for receives a signal, such as a SIGSEGV. This is the wrong behaviour, I'll look into fixing it. The next step is to find out why GHC is crashing - you could try running GHC on its own, independently of Cabal (use "runghc Setup.lhs -v" to get the command line). Cheers, Simon

On Fri, Nov 11, 2005 at 02:26:23PM -0000, Simon Marlow wrote:
On 06 November 2005 20:31, Ed Osinski wrote:
when I try to install HSQL-1.6, it dies during the build step. :-(
Here is the output:
/sware/build/HSQL-1.6/HSQL |> runghc Setup.lhs build Preprocessing library hsql-1.6... Building hsql-1.6... Chasing modules from: Database.HSQL,Database.HSQL.Types Compiling Database.HSQL.Types ( ./Database/HSQL/Types.hs, dist/build/./Database/HSQL/Types.o ) Compiling Database.HSQL ( ./Database/HSQL.hs, dist/build/./Database/HSQL.o ) *** Exception: waitForProcess: interrupted (Interrupted system call)
This error happens consistently, but sometimes one line earlier. Googling reveals that at least one person encountered this exception on Solaris in the recent past:
I think this means that GHC crashed. waitForProcess throws the "interrupted" exception whenever the sub-process it is waiting for receives a signal, such as a SIGSEGV. This is the wrong behaviour, I'll look into fixing it.
The next step is to find out why GHC is crashing - you could try running GHC on its own, independently of Cabal (use "runghc Setup.lhs -v" to get the command line).
Ok; the command line is: /usr/local/bin/ghc -package-name hsql -odir dist/build/. -hidir dist/build/. --make -i. -ffi -fglasgow-exts -cpp -package base-1.0 Database.HSQL Database.HSQL.Types The problem is a "Bus error", but it doesn't always occur at the same spot. I ran the above command with the "-v" option. Here is the output from one run: Glasgow Haskell Compiler, Version 6.4.1, for Haskell 98, compiled by GHC version 6.4.1 Using package config file: /usr/local/lib/ghc-6.4.1/package.conf Hsc static flags: -static *** Chasing dependencies: Chasing modules from: Database.HSQL,Database.HSQL.Types *** C pre-processor gcc -E -undef -traditional -v -I /usr/local/lib/ghc-6.4.1/include -D__HASKELL1__=5 -D__GLASGOW_HASKELL__=604 -D__HASKELL98__ -D__CONCURRENT_HASKELL__ -Dsolaris2_BUILD_OS=1 -Dsparc_BUILD_ARCH=1 -Dsolaris2_HOST_OS=1 -Dsparc_HOST_ARCH=1 -x c ./Database/HSQL.hs -o /tmp/ghc14784.hscpp Using built-in specs. Target: sparc-sun-solaris2.9 Configured with: ../gcc-4.0.2/configure --enable-threads --enable-version-specific-runtime-libs --enable-languages=all,ada,treelang --with-system-zlib Thread model: posix gcc version 4.0.2 /usr/local/libexec/gcc/sparc-sun-solaris2.9/4.0.2/cc1 -E -traditional-cpp -quiet -v -I /usr/local/lib/ghc-6.4.1/include -D__HASKELL1__=5 -D__GLASGOW_HASKELL__=604 -D__HASKELL98__ -D__CONCURRENT_HASKELL__ -Dsolaris2_BUILD_OS=1 -Dsparc_BUILD_ARCH=1 -Dsolaris2_HOST_OS=1 -Dsparc_HOST_ARCH=1 ./Database/HSQL.hs -o /tmp/ghc14784.hscpp -mcpu=v7 -undef ignoring nonexistent directory "NONE/include" ignoring nonexistent directory "/usr/local/lib/gcc/sparc-sun-solaris2.9/4.0.2/../../../../sparc-sun-solaris2.9/include" #include "..." search starts here: #include <...> search starts here: /usr/local/lib/ghc-6.4.1/include /usr/local/include /usr/local/lib/gcc/sparc-sun-solaris2.9/4.0.2/include /usr/include End of search list. *** C pre-processor gcc -E -undef -traditional -v -I /usr/local/lib/ghc-6.4.1/include -D__HASKELL1__=5 -D__GLASGOW_HASKELL__=604 -D__HASKELL98__ -D__CONCURRENT_HASKELL__ -Dsolaris2_BUILD_OS=1 -Dsparc_BUILD_ARCH=1 -Dsolaris2_HOST_OS=1 -Dsparc_HOST_ARCH=1 -x c ./Database/HSQL/Types.hs -o /tmp/ghc14785.hscpp Using built-in specs. Target: sparc-sun-solaris2.9 Configured with: ../gcc-4.0.2/configure --enable-threads --enable-version-specific-runtime-libs --enable-languages=all,ada,treelang --with-system-zlib Thread model: posix gcc version 4.0.2 /usr/local/libexec/gcc/sparc-sun-solaris2.9/4.0.2/cc1 -E -traditional-cpp -quiet -v -I /usr/local/lib/ghc-6.4.1/include -D__HASKELL1__=5 -D__GLASGOW_HASKELL__=604 -D__HASKELL98__ -D__CONCURRENT_HASKELL__ -Dsolaris2_BUILD_OS=1 -Dsparc_BUILD_ARCH=1 -Dsolaris2_HOST_OS=1 -Dsparc_HOST_ARCH=1 ./Database/HSQL/Types.hs -o /tmp/ghc14785.hscpp -mcpu=v7 -undef ignoring nonexistent directory "NONE/include" ignoring nonexistent directory "/usr/local/lib/gcc/sparc-sun-solaris2.9/4.0.2/../../../../sparc-sun-solaris2.9/include" #include "..." search starts here: #include <...> search starts here: /usr/local/lib/ghc-6.4.1/include /usr/local/include /usr/local/lib/gcc/sparc-sun-solaris2.9/4.0.2/include /usr/include End of search list. Stable modules: *** Compiling Database.HSQL.Types ( ./Database/HSQL/Types.hs, interpreted ): compile: input file /tmp/ghc14785.hscpp *** Checking old interface for Database.HSQL.Types: Compiling Database.HSQL.Types ( ./Database/HSQL/Types.hs, dist/build/./Database/HSQL/Types.o ) *** Parser: *** Renamer/typechecker: *** Desugar: Result size = 841 *** Simplify: Result sizBus error and here is the output from another: Glasgow Haskell Compiler, Version 6.4.1, for Haskell 98, compiled by GHC version 6.4.1 Using package config file: /usr/local/lib/ghc-6.4.1/package.conf Hsc static flags: -static *** Chasing dependencies: Chasing modules from: Database.HSQL,Database.HSQL.Types *** C pre-processor gcc -E -undef -traditional -v -I /usr/local/lib/ghc-6.4.1/include -D__HASKELL1__=5 -D__GLASGOW_HASKELL__=604 -D__HASKELL98__ -D__CONCURRENT_HASKELL__ -Dsolaris2_BUILD_OS=1 -Dsparc_BUILD_ARCH=1 -Dsolaris2_HOST_OS=1 -Dsparc_HOST_ARCH=1 -x c ./Database/HSQL.hs -o /tmp/ghc15443.hscpp Using built-in specs. Target: sparc-sun-solaris2.9 Configured with: ../gcc-4.0.2/configure --enable-threads --enable-version-specific-runtime-libs --enable-languages=all,ada,treelang --with-system-zlib Thread model: posix gcc version 4.0.2 /usr/local/libexec/gcc/sparc-sun-solaris2.9/4.0.2/cc1 -E -traditional-cpp -quiet -v -I /usr/local/lib/ghc-6.4.1/include -D__HASKELL1__=5 -D__GLASGOW_HASKELL__=604 -D__HASKELL98__ -D__CONCURRENT_HASKELL__ -Dsolaris2_BUILD_OS=1 -Dsparc_BUILD_ARCH=1 -Dsolaris2_HOST_OS=1 -Dsparc_HOST_ARCH=1 ./Database/HSQL.hs -o /tmp/ghc15443.hscpp -mcpu=v7 -undef ignoring nonexistent directory "NONE/include" ignoring nonexistent directory "/usr/local/lib/gcc/sparc-sun-solaris2.9/4.0.2/../../../../sparc-sun-solaris2.9/include" #include "..." search starts here: #include <...> search starts here: /usr/local/lib/ghc-6.4.1/include /usr/local/include /usr/local/lib/gcc/sparc-sun-solaris2.9/4.0.2/include /usr/include End of search list. *** C pre-processor gcc -E -undef -traditional -v -I /usr/local/lib/ghc-6.4.1/include -D__HASKELL1__=5 -D__GLASGOW_HASKELL__=604 -D__HASKELL98__ -D__CONCURRENT_HASKELL__ -Dsolaris2_BUILD_OS=1 -Dsparc_BUILD_ARCH=1 -Dsolaris2_HOST_OS=1 -Dsparc_HOST_ARCH=1 -x c ./Database/HSQL/Types.hs -o /tmp/ghc15444.hscpp Using built-in specs. Target: sparc-sun-solaris2.9 Configured with: ../gcc-4.0.2/configure --enable-threads --enable-version-specific-runtime-libs --enable-languages=all,ada,treelang --with-system-zlib Thread model: posix gcc version 4.0.2 /usr/local/libexec/gcc/sparc-sun-solaris2.9/4.0.2/cc1 -E -traditional-cpp -quiet -v -I /usr/local/lib/ghc-6.4.1/include -D__HASKELL1__=5 -D__GLASGOW_HASKELL__=604 -D__HASKELL98__ -D__CONCURRENT_HASKELL__ -Dsolaris2_BUILD_OS=1 -Dsparc_BUILD_ARCH=1 -Dsolaris2_HOST_OS=1 -Dsparc_HOST_ARCH=1 ./Database/HSQL/Types.hs -o /tmp/ghc15444.hscpp -mcpu=v7 -undef ignoring nonexistent directory "NONE/include" ignoring nonexistent directory "/usr/local/lib/gcc/sparc-sun-solaris2.9/4.0.2/../../../../sparc-sun-solaris2.9/include" #include "..." search starts here: #include <...> search starts here: /usr/local/lib/ghc-6.4.1/include /usr/local/include /usr/local/lib/gcc/sparc-sun-solaris2.9/4.0.2/include /usr/include End of search list. Stable modules: *** Compiling Database.HSQL.Types ( ./Database/HSQL/Types.hs, interpreted ): compile: input file /tmp/ghc15444.hscpp *** Checking old interface for Database.HSQL.Types: Compiling Database.HSQL.Types ( ./Database/HSQL/Types.hs, dist/build/./Database/HSQL/Types.o ) *** Parser: *** Renamer/typechecker: *** Desugar: Result size = 841 *** Simplify: Result size = 1176 Result size = 1087 Result size = 1087 *** Tidy Core: Result size = 1087 *** CorePrep: Result size = 1910 *** Stg2Stg: *** CodeGen: *** CodeOutput: Bus error I ran this a few times, and getting the bus error right after the "CodeOutput" line is more typical. Anything else I can do to help track down the problem? - Ed
participants (2)
-
Ed Osinski
-
Simon Marlow