Re: More questions on installing 2.05
[Redirected to g-h-b to spare the tender souls on g-h-u :-) ] > > After my success at compiling ghc-2.05 on SunOS 4, I am now attempting it > on sparc-sun-solaris2.5.1 and i386-unknown-solaris2.5 and both of them > have stopped with this: > > ghc-0.29 [] -c absCSyn/PprAbsC.lhs -o absCSyn/PprAbsC.o -osuf o > > "codeGen/ClosureInfo.hi", line 72: > undefined type constructor: StgSyn.StgBinderInfo > ... > > (and is there any way to get "make all" abort if "cd ghc/compiler;make all" > has errors?) > > Oddly enough it compiles OK if I take the -O out, so perhaps I'll continue > with that (it occurs to me that I probably didn't compile the sunos one > with the -O flag. [pause] yes, it doesn't work with -O on sunos either). > > imc Hi, sorry about the delay. To get around the problem with absCSyn/PprAbsC.o & 'ghc-0.29 -O', you can either do as you did or apply the patch suggested on the bugs page: http://www.dcs.gla.ac.uk/fp/software/ghc/bugs.html#2.05-compile Re: stop-on-error behaviour with make, the following (untested) patch might help... HTH, --Sigbjorn *** fptools/mk/target.mk1997/07/05 00:49:46 1.15 --- fptools/mk/target.mk1997/07/31 12:48:10 *** *** 1021,1025 all docs runtests boot TAGS clean veryclean maintainer-clean install info :: - @case '${MFLAGS}' in *[ik]*) set +e;; esac; @echo "" @echo "===fptools== Recursively making \`$@' in $(SUBDIRS) ..." --- 1021,1024 *** *** 1027,1030 --- 1026,1030 @echo "" @for i in $(SUBDIRS) ; do \ + case '${MFLAGS}' in *-[ik]*) set +e; break;; *) set -e;; esac; \ echo ""; \ echo "==fptools== $(MAKE) $@;"; \ *** *** 1039,1044 dist :: - @case '${MFLAGS}' in *[ik]*) set +e;; esac; \ for i in $(SUBDIRS) ; do \ $(MKDIRHIER_PREFIX)mkdirhier $(SRC_DIST_DIR)/$$i; \ $(MAKE) -C $$i $(MFLAGS) $@ SRC_DIST_DIR=$(SRC_DIST_DIR)/$$i; \ --- 1039,1044 dist :: for i in $(SUBDIRS) ; do \ + case '${MFLAGS}' in *-[ik]*) set +e;; *) set -e;; esac; \ $(MKDIRHIER_PREFIX)mkdirhier $(SRC_DIST_DIR)/$$i; \ $(MAKE) -C $$i $(MFLAGS) $@ SRC_DIST_DIR=$(SRC_DIST_DIR)/$$i; \ *** *** 1068,1071 --- 1068,1072 @echo "" @for i in $(WAYS) ; do \ + case '${MFLAGS}' in *-[ik]*) set +e;; *) set -e;; esac; \ echo ""; \ echo "==fptools== $(MAKE) way=$$i $@;"; \
Re: More questions on installing 2.05
Me again... :-( After my success at compiling ghc-2.05 on SunOS 4, I am now attempting it on sparc-sun-solaris2.5.1 and i386-unknown-solaris2.5 and both of them have stopped with this: ghc-0.29 -cpp -fhaskell-1.3 -fglasgow-exts -DCOMPILING_GHC -Rghc-timing -I. -I codeGen -InativeGen -Iparser -iutils -ibasicTypes -itypes -ihsSyn -iprelude -i rename -itypecheck -ideSugar -icoreSyn -ispecialise -isimplCore -istranal -ist gSyn -isimplStg -icodeGen -iabsCSyn -imain -ireader -iprofiling -iparser -inat iveGen -fomit-derived-read -fomit-reexported-instances -DOMIT_DEFORESTER -O -H 20m-c absCSyn/PprAbsC.lhs -o absCSyn/PprAbsC.o -osuf o "codeGen/ClosureInfo.hi", line 72: undefined type constructor: StgSyn.StgBinderInfo "codeGen/ClosureInfo.hi", line 74: undefined type constructor: CgMonad.CgInfoDownwards "codeGen/ClosureInfo.hi", line 74: undefined type constructor: CgMonad.CgState [snip more of the same] Compilation had errors make: *** [absCSyn/PprAbsC.o] Error 1 (and is there any way to get "make all" abort if "cd ghc/compiler;make all" has errors?) Oddly enough it compiles OK if I take the -O out, so perhaps I'll continue with that (it occurs to me that I probably didn't compile the sunos one with the -O flag. [pause] yes, it doesn't work with -O on sunos either). imc
Re: More questions on installing 2.05
On Tue, 05 Aug 1997 00:50:05 +0100 (BST), Sigbjorn Finne said: > > Question 3: How do I even make the docs? > You'll have to give the doc target, e.g., 'make dvi', in the > directory containing the .lit files. OK, I've got somewhere with this (is it mentioned anywhere in the installation instructions?) but in the users_guide directory the command lit2latex -c -o runtime_control.itex runtime_control.lit makes a file runtime_control.itex which is full of control characters and weird things. For example, the very first line of it is lit^@ile!_!-!_!1!_! and it contains no fewer than 30 copies of a single paragraph with minor variations. What gives? imc
Re: More questions on installing 2.05
Ian Collier writes: > .. > > I had to add GhcHcOpts=-H12m to my build file to get it to stop complaining > (12m was a guess, but the default of 6m was definitely too small). I would > have thought this would have been added as necessary by the developers to > avoid me having to increase the size globally - it's also not the sort of > thing I would expect to know before starting the compilation. > The settings in the ghc/compiler Makefile should cope with 0.29 compiles *without* -O (on 32 bit machines). There's a known problem with Time in ghc/lib, it needs a bigger heap than what it was given in 2.05 (-H12m instead of -H10m). If you compile with -O, there's currently no way of automatically scaling these heap settings, I'm afraid. One general solution to this inconvenience would be to have an RTS that could grow its heap upon exhaustion.. > Anyway... > > Question 1: Why doesn't "make check" do any tests? > The hooks are there, but we've yet to integrate any post-build system checks into the distribution. If you manage to build the prelude and system libraries, there's a fair chance that things are sane though. > > Question 2: Why doesn't "make install" install any docs? > No good reason, other than it being hard to second guess which types of documentation you want installed by default - html, info, dvi ? However, at the very least there should be support for controlling this together with an install-docs target. > > Question 3: How do I even make the docs? > You'll have to give the doc target, e.g., 'make dvi', in the directory containing the .lit files. (make sure the dependencies were generated correctly during the initial `make boot'). Thanks for the feedback, --Sigbjorn