www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/09/09/22:34:44

Date: Tue, 9 Sep 1997 19:34:02 -0700 (PDT)
Message-Id: <199709100234.TAA28521@adit.ap.net>
Mime-Version: 1.0
To: pjfarley AT dorsai DOT org (Peter J. Farley III), djgpp AT delorie DOT com
From: Nate Eldredge <eldredge AT ap DOT net>
Subject: Re: Rebuilding gcc -- cc1plus and gxx not made

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



- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019