- Errors from tar during upacking binary
One of the filenames in the tar package is too long for Solaris
tar - the workaround is to use GNU tar instead.
Errors from sh
during a binary install.
If you get errors like this when trying to install a binary
% make in-place
make config-pkgs bindir=`pwd`/bin/sparc-sun-solaris2/ghc-2.10
libdir=`pwd`/lib /sparc-sun-solaris2 datadir=`pwd`/share/ghc-2.10
Configuring ghc, version 2.10, on sparc-sun-solaris2 ...
Creating a configured version of ghc ..
Creating a configured version of stat2resid ..
Creating a configured version of hstags ..
Creating a configured version of mkdependHS ..
Creating a configured version of hscpp ..
sh: syntax error at line 2: `;' unexpected
*** Error code 2
make: Fatal error: Command failed for target `config-pkgs'
Current working directory /home/crt/augustss/ghc/fptools
*** Error code 1
make: Fatal error: Command failed for target `in-place'
It's because some shells (notably Solaris sh) have trouble
with the empty for loops in the Makefile. Delete the
if statement in the Makefile that begins with
@if test "$(PACKAGE_SH_SCRIPTS)"; then \
Native code generator can't handle ``-2147483648''.
This is due to minBound on Ints being defined in terms of a
literal-literal, which is inlined. Only specific types of
literal-literal are supported by the native code generator, and this
isn't one of them. Workaround: use -fvia-C.
Deriving classes on nullary constructors.
Deriving classes on datatypes with nullary constructors sometimes
doesn't work. The symptom is the following error:
panic! (the `impossible' happened):
This will be fixed in the next release.
- Native code generator can't handle seq
seq is currently unimplemented in the native code generator.
The error message is somewhat cryptic:
nativeGen/MachCode.lhs:1017: Non-exhaustive patterns in case
Workaround: compile with the -fvia-C flag.
- Profiling problems
There have been various reports of problems with the profiling system
in recent versions of GHC. Since we are currently rewriting the
run-time system including completely re-done profiling, we're not
intending to expend any effort on fixing bugs in the existing system.
Profiling seems to work fairly well for most people - if you have any
trouble, try adjusting the heap size or moving _scc_s around.