> > Anyway, I changed mk/config.h to add
> >     #define HAVE_ALTZONE
> >     #define HAVE_TIMEZONE
> > and received the same error.  I will now `make clean' and rebuild from
> > scratch, to see if it makes any difference.

OK, rebuilding from scratch, I discovered that I should really have defined
        #define HAVE_ALTZONE 1
        #define HAVE_TIMEZONE 1
I still wonder why configure got this setting wrong in the first place.
Anyway, rebuilding from scratch yet again (it seems impossible to
change config.h and keep going successfully), I now get a new error
later on.

------------------------------------------------------------------------
==fptools== make all -wr;
 in /export/home/malcolm/ghc-5.04.3/libraries/haskell98
------------------------------------------------------------------------
... compile each library ...
rm -f libHShaskell98.a libHShaskell98.a.tmp
(echo  ; find Array_split CPUTime_split Char_split Complex_split Directory_split 
IO_split Ix_split List_split Locale_split Maybe_split Monad_split Random_split 
Ratio_split System_split Time_split -name '*.o') | xargs ar q libHShaskell98.a.tmp
: libHShaskell98.a.tmp
mv libHShaskell98.a.tmp libHShaskell98.a
mv: cannot access libHShaskell98.a.tmp
make[2]: *** [libHShaskell98.a] Error 2
make[1]: *** [all] Error 1
make[1]: Leaving directory `/export/home/malcolm/ghc-5.04.3/libraries'
------------------------------------------------------------------------

This time, the culprit is our slightly aging version of 'find': with
only the -name option, it does not report any filenames; you need to
add the -print option as well.

Fixing that and continuing, the next problem is with readline header files.
When compiling hslibs/util/Readline.hsc, the complaint is that 

------------------------------------------------------------------------
==fptools== make boot -wr;
 in /export/home/malcolm/ghc-5.04.3/hslibs/util
------------------------------------------------------------------------
....
../../ghc/utils/hsc2hs/hsc2hs-inplace -I.   Readline.hsc
Readline.hsc:255: readline/readline.h: No such file or directory
Readline.hsc:256: readline/history.h: No such file or directory
make[2]: *** [Readline.hs] Error 1
make[1]: *** [boot] Error 1
make[1]: Leaving directory `/export/home/malcolm/ghc-5.04.3/hslibs'
------------------------------------------------------------------------

The reason is that although the configure script discovered
the non-standard location of the readline library (due to the
LD_LIBRARY_PATH environment variable being set correctly), it didn't
bother to look for the include files.

One part of the solution is that I need to explicitly set
    ReadlineIncludePath = /export/home/malcolm/include
in mk/config.mk, but it still fails, because hsc2hs doesn't make any
use of that variable!  So the second part of the solution is to add the
following fix to hslibs/util/Makefile:

    ifneq "$(ReadlineIncludePath)" ""
      SRC_HC_OPTS += -I$(ReadlineIncludePath)
+     SRC_HSC2HS_OPTS += -I$(ReadlineIncludePath)
    endif

And once again, make clean and rebuild from scratch...  (Without make
clean, the error given is this:)

    ../../ghc/utils/hsc2hs/hsc2hs-inplace -I/usr/rs/include/solaris2 -I. Readline.hsc
    make[2]: *** No rule to make target `Readline_hsc_make.c', needed by `depend'.

Then, discovering that the installed version of readline is too old
to support all the operations in Readline.hsc, I have to upgrade
readline and start all over again...

... finally getting a complete build, after a mere four working days
of attempts.  But now, in order to install it, I need to know the
properties of `make clean'.  The problem is that, after building ghc
on the local disc, my Sparc machine now only has 43Mb of disc space
left, which is clearly insufficient to install it.  So, if I do a
`make clean', will I be throwing away my freshly built compiler
and libraries?  Or will it just clean up the intermediate files,
leaving the important stuff in place, meanwhile hopefully freeing
enough space for installation to become possible?

Regards,
    Malcolm

P.S. For some reason, my automated nightly build seems to have gone
through without errors, and without the bug fixes I needed to apply
to the manual build.  Curious.  But it doesn't succeed in making a
binary distribution file, so I can't install from that version either.
_______________________________________________
Glasgow-haskell-bugs mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to