Date: Tue, 9 Sep 1997 19:34:02 -0700 (PDT) Message-Id: <199709100234.TAA28521@adit.ap.net> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" To: pjfarley AT dorsai DOT org (Peter J. Farley III), djgpp AT delorie DOT com From: Nate Eldredge Subject: Re: Rebuilding gcc -- cc1plus and gxx not made Precedence: bulk At 04:42 9/5/1997 GMT, Peter J. Farley III wrote: >I have successfully rebuilt gcc with the go32/stabs patch from SET's >page from gcc2721s.zip (recently obtained), using my DOS 6.22 >environment. However, nothing in the "cp" directory seems to make at >all, even when I use the parameter LANGUAGES="c c++". I note there is >a file in the cp directory (mk.bat) that invokes the makefile that's >also there, but make from the main gnu/gcc-2721 directory does not >seem to automatically make what's in the cp directory (at least, I get >no "cc1plus" nor "gxx" built in the gnu/gcc-2721). > >Did I miss a readme somewhere, or something in the install or faq >files? Or are there really not any clear instructions on how to >completely remake the package as delivered? I don't think there's any official documentation, however, here are the steps I followed to get gcc to build successfully. It was rather confusing. You need to have bash; I don't think you can build without it. Note that gcc won't build on an LFN system, currently. I presume this will change when the zip file is made to include the long versions. Also, gxx is not part of gcc per se, but one of the utils. All it does is something like: gcc $@ -lgpp -lstdcx -lm in shell script format. You don't need to rebuild gxx. 1. Unpack gcc2721s.zip 2. Apply any patches you want, for instance stabs. 3. In the gnu/gcc-2721 directory, run configur go32 4. There are a few problems with the makefiles. Apply the patches I've included below. 5. In the base gcc directory, run make "CFLAGS=[whatever]" 6. Change to the cp subdirectory 7. Run: make "CFLAGS=[whatever]" 8. Back in the base gcc directory (cd ..), copy the binaries cp cc1.exe ../../bin cp cc1plus.exe ../../bin (optional, only if you want C++) cp cc1obj ../../bin (optional, only if you want Objective-C) cp cccp.exe ../../bin/cpp.exe ln -s ../../bin/cpp.exe ../../bin/cccp.exe (optional) cp xgcc.exe ../../bin/gcc.exe cp libgcc.a ../../lib (is this really necessary?) Patches: a. This patch should be applied to gnu/gcc-2721/makefile --cut-- *** makefile Tue Sep 9 18:22:10 1997 --- makefile.new Tue Sep 9 18:20:18 1997 *************** *** 67,71 **** OLDAR_FLAGS = qc AR_FLAGS = rc ! SHELL = /bin/sh # on sysV, define this as cp. INSTALL = install -c --- 67,71 ---- OLDAR_FLAGS = qc AR_FLAGS = rc ! SHELL = bash # on sysV, define this as cp. INSTALL = install -c *************** *** 1271,1275 **** bc-arity.h: s-bcarity s-bcarity : $(srcdir)/bytecode.def bi-arity $(srcdir)/move-if-change ! bi-arity < $(srcdir)\bytecode.def >t-bc-arity.h update t-bc-arity.h bc-arity.h touch s-bcarity --- 1271,1275 ---- bc-arity.h: s-bcarity s-bcarity : $(srcdir)/bytecode.def bi-arity $(srcdir)/move-if-change ! bi-arity < $(srcdir)/bytecode.def >t-bc-arity.h update t-bc-arity.h bc-arity.h touch s-bcarity *************** *** 1277,1281 **** bc-opcode.h: s-bcopcode s-bcopcode : $(srcdir)/bytecode.def bi-opcode $(srcdir)/move-if-change ! bi-opcode < $(srcdir)\bytecode.def >t-bcopcd.h update t-bcopcd.h bc-opcode.h touch s-bcopcode --- 1277,1281 ---- bc-opcode.h: s-bcopcode s-bcopcode : $(srcdir)/bytecode.def bi-opcode $(srcdir)/move-if-change ! bi-opcode < $(srcdir)/bytecode.def >t-bcopcd.h update t-bcopcd.h bc-opcode.h touch s-bcopcode *************** *** 1283,1287 **** bc-opname.h: s-bcopname s-bcopname : $(srcdir)/bytecode.def bi-opname $(srcdir)/move-if-change ! bi-opname < $(srcdir)\bytecode.def >t-bcopnm.h update t-bcopnm.h bc-opname.h touch s-bcopname --- 1283,1287 ---- bc-opname.h: s-bcopname s-bcopname : $(srcdir)/bytecode.def bi-opname $(srcdir)/move-if-change ! bi-opname < $(srcdir)/bytecode.def >t-bcopnm.h update t-bcopnm.h bc-opname.h touch s-bcopname --cut-- b. Apply this patch to gnu/gcc-2721/cp/makefile: --cut-- *** makefile Tue Sep 9 18:22:08 1997 --- makefile.new Tue Sep 9 18:20:22 1997 *************** *** 62,66 **** AR = ar AR_FLAGS = rc ! SHELL = /bin/sh MAKEINFO = makeinfo TEXI2DVI = texi2dvi --- 62,66 ---- AR = ar AR_FLAGS = rc ! SHELL = /bash MAKEINFO = makeinfo TEXI2DVI = texi2dvi *************** *** 193,197 **** parse.o : $(PARSE_C) $(CONFIG_H) $(CXX_TREE_H) $(srcdir)/../flags.h lex.h $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(BIG_SWITCHFLAG) \ ! `echo $(PARSE_C) CONFLICTS = expect 5 shift/reduce conflicts and 38 reduce/reduce conflicts. --- 193,197 ---- parse.o : $(PARSE_C) $(CONFIG_H) $(CXX_TREE_H) $(srcdir)/../flags.h lex.h $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) $(INCLUDES) $(BIG_SWITCHFLAG) \ ! `echo $(PARSE_C)` CONFLICTS = expect 5 shift/reduce conflicts and 38 reduce/reduce conflicts. --cut-- Hope this helps; hope you get GCC working soon. Nate Eldredge eldredge AT ap DOT net