Re: Compiling nhc98-1.0pre7 with ghc



About this list Date view Thread view Subject view Author view

Jose Romildo Malaquias (romildo@urano.iceb.ufop.br)
Thu, 5 Aug 1999 10:46:48 -0300


On Wed, Aug 04, 1999 at 02:45:00PM +0100, Malcolm Wallace wrote: > > /var/tmp/nhc98-1.0pre7/script/harch: Can't reopen pipe to command > > substitution (fd 7): No child processes > > This is the cause of the problem. I admit I don't understand what this > error message means, but I have a suggestion for a fix anyway. :-) > > In the toplevel file Makefile.inc, line 24, try changing > MACHINE = $(shell $(LOCAL)harch) > to > MACHINE := $(shell $(LOCAL)harch) > > Because I have not seen this error before, and cannot reproduce it on > my Linux machine, can you please let me know if this fix works? Thanks. > > Regards, > Malcolm Yes, this fix works for me. But now I have another problem. hmake seems to be unable to find the IO modules for ghc. Compilation stops with the messages: ------------------------------------------------------------ rm -f /var/tmp/nhc98-1.0pre7/targets/ix86-Linux/obj/compiler98/FixSyntax.o /var/tmp/nhc98-1.0pre7/targets/ix86-Linux/obj/compiler98/STGBuild.o /var/tmp/nhc98-1.0pre7/targets/ix86-Linux/obj/compiler98/STGGcode.o touch /var/tmp/nhc98-1.0pre7/targets/ix86-Linux/obj/compiler98/last /var/tmp/nhc98-1.0pre7/script/hmake -ghc -H32M -d /var/tmp/nhc98-1.0pre7/targets/ix86-Linux/obj/compiler98 Main Fail: failed Reason: Can't find module IO Check -P and -I flags. mv /var/tmp/nhc98-1.0pre7/targets/ix86-Linux/obj/compiler98/Main /var/tmp/nhc98-1.0pre7/lib/ix86-Linux/nhc98comp mv: /var/tmp/nhc98-1.0pre7/targets/ix86-Linux/obj/compiler98/Main: No such file or directory make[1]: *** [/var/tmp/nhc98-1.0pre7/lib/ix86-Linux/nhc98comp] Error 1 make[1]: Leaving directory `/var/tmp/nhc98-1.0pre7/src/compiler98' make: *** [targets/ix86-Linux/compilerb] Error 2 ------------------------------------------------------------ The comands I have been using are the following ones: cd /var/tmp tar -zxvf /urano/downloads/haskell/nhc98/nhc98src-1.0pre7.tar.gz cd /var/tmp/nhc98-1.0pre7 patch -p1 < ../nhc98-1.0pre7.patch1 ./nhc98config --build --installdir=/var/tmp/nhc --docdir=/var/tmp/nhc/doc +docs > log 2>&1 & make fromSrc > log1 2>&1 & And the patches are attached to this message. I think I have not set correctly the path for the ghc libraries. In my system the IO module can be found at /usr/lib/ghc-4.04/imports/std/IO.hi Can you help me with this, please? Romildo.

diff -ur nhc98-1.0pre7.orig/Makefile nhc98-1.0pre7/Makefile --- nhc98-1.0pre7.orig/Makefile Wed Jul 21 08:45:31 1999 +++ nhc98-1.0pre7/Makefile Wed Aug 4 11:01:03 1999 @@ -183,7 +183,7 @@ cd src/compiler98; $(MAKE) install touch $(TARGDIR)/$(MACHINE)/compiler $(TARGDIR)/$(MACHINE)/compilerb: $(COMPILER) - cd src/compiler98; $(MAKE) HC=hbc install + cd src/compiler98; $(MAKE) HC=ghc install touch $(TARGDIR)/$(MACHINE)/compilerb $(TARGDIR)/$(MACHINE)/bootprelude: cd src/prelude; $(MAKE) boot @@ -198,7 +198,7 @@ cd src/hmake; $(MAKE) install touch $(TARGDIR)/$(MACHINE)/hmake $(TARGDIR)/$(MACHINE)/hmakeb: $(HMAKE) - cd src/hmake; $(MAKE) HC=hbc install + cd src/hmake; $(MAKE) HC=ghc install touch $(TARGDIR)/$(MACHINE)/hmakeb $(TARGDIR)/$(MACHINE)/hp2graph: $(HP2GRAPH) cd src/hp2graph; $(MAKE) install @@ -216,7 +216,7 @@ cd src/compiler98; $(MAKE) CFG=T install touch $(TARGDIR)/$(MACHINE)/tracecompiler $(TARGDIR)/$(MACHINE)/tracecompilerb: $(COMPILER) - cd src/compiler98; $(MAKE) CFG=T HC=hbc install + cd src/compiler98; $(MAKE) CFG=T HC=ghc install touch $(TARGDIR)/$(MACHINE)/tracecompilerb $(TARGDIR)/$(MACHINE)/traceruntime: $(RUNTIME) $(RUNTIMET) cd src/runtime; $(MAKE) CFG=T install diff -ur nhc98-1.0pre7.orig/Makefile.inc nhc98-1.0pre7/Makefile.inc --- nhc98-1.0pre7.orig/Makefile.inc Wed May 5 08:46:51 1999 +++ nhc98-1.0pre7/Makefile.inc Wed Aug 4 11:02:34 1999 @@ -21,7 +21,7 @@ BUILDBASEDIR:=/tmp endif -MACHINE = $(shell $(LOCAL)harch) +MACHINE := $(shell $(LOCAL)harch) export MACHINE HC = $(LOCAL)nhc98 diff -ur nhc98-1.0pre7.orig/script/hmakeconfig.inst nhc98-1.0pre7/script/hmakeconfig.inst --- nhc98-1.0pre7.orig/script/hmakeconfig.inst Thu Jul 22 07:25:19 1999 +++ nhc98-1.0pre7/script/hmakeconfig.inst Wed Aug 4 11:01:03 1999 @@ -48,7 +48,7 @@ # ghc # GHCINCPATH is a colon-separated list of directories containing .hi files # Please ensure that each directory name has a trailing slash. -GHCINCDIR=${GHCINCDIR-/usr/local/lib/ghc-4.02/lib/imports} +GHCINCDIR=${GHCINCDIR-/usr/lib/ghc-4.04/imports} GHCINCPATH=":"${GHCINCPATH-"${GHCINCDIR}/std:${GHCINCDIR}/exts"} GHCPRELOPTS=`echo $GHCINCPATH | sed -e "s/:/ -P/g"` diff -ur nhc98-1.0pre7.orig/src/hmake/GetDep.hs nhc98-1.0pre7/src/hmake/GetDep.hs --- nhc98-1.0pre7.orig/src/hmake/GetDep.hs Wed Jun 30 09:42:07 1999 +++ nhc98-1.0pre7/src/hmake/GetDep.hs Wed Aug 4 11:01:03 1999 @@ -14,7 +14,7 @@ #endif import IO -#if ! (defined(__HASKELL_98__) || __HASKELL1__ <= 4) +#if ! (defined(__HASKELL_98__) || __HASKELL1__ > 4) #define ioError fail #endif -------------------------------------------------------------------- To unsubscribe, send a message containing the word `unsubscribe' to: nhc-users-request@cs.york.ac.uk --------------------------------------------------------------------


About this list Date view Thread view Subject view Author view