ftp.nice.ch/pub/next/developer/languages/c/djgpp.2.0.README

This is the README for djgpp.2.0.N.b.tar.gz [Download] [Browse] [Up]

This package includes djgpp Version 2.00
 for NeXT, a cross compiler based on gcc 2.7.2, for the C, C++ and Objective C languages.

Djgpp is a DOS port of gcc,  produces executables that run under DOS/DPMI  extender (I don't know what this is, but my program runs on my colleage's PC).

This tool allows to port very easely standard C programs (without graphics) from a NeXT to PCs without shrinking sources filenames, CR/LF filtering, and $.

It should work also with C++ and Objective C programs (not tested !)


To use it :
	gcc-dos hello.c -o hello.exe
or
	g++-dos hello.cc -o hello.exe

In makefiles, change the CC macro : CC = gcc-dos
type make program and a "program.exe" file wil be automatically generated.

to install it (in /usr/local directories) :

gtar xfz x_gcc-dos_272.b.N.tar.gz



This software is distributed under the FSF license as a public  service.
The author offer no warranty or guarantee of any type.
No modification of the original sources were made.

------------------------------------------------
Bruno.Bienfait@EROS.CCC.Uni-Erlangen.de
http://schiele.organik.uni-erlangen.de/Bruno_Bienfait/home.html
http://schiele.organik.uni-erlangen.de/Bruno_Bienfait/HotPostscript.html
------------------------------------------------



-------------------------------------------------------------------------------
DJGPP v2.0 is a free environment for developing 32-bit protected mode

software in C/C++ under MS-DOS.



Status and other information (online docs, FAQ, mail archives) are

made available through the djgpp web pages at http://www.delorie.com/.

Discussion of DJGPP and questions about its usage or features are

through the djgpp news group (post to comp.os.msdos.djgpp) and djgpp

mailing list (send your messages to <djgpp@delorie.com>, subscribe

through <listserv@delorie.com>).  Look on the web page for information

on the latest versions of various DJGPP packages.



Version information is in manifest/*.ver within each zip.  Contents

are in manifest/*.mft in each zip.



A different, more complete (and longer) tutorial on how to get started

with DJGPP was written by An <avly@remus.rutgers.edu> and is available

by anonymous ftp from x2ftp.oulu.fi in the

/pub/msdos/programming/djgpp2 directory, filename djtut-bm.zip.  You

can also read it on-line by pointing your Web browser to this URL:



	http://remus.rutgers.edu/~avly/djgpp.html




Status and other information (online docs, FAQ, mail archives) are

made available through the djgpp web pages at http://www.delorie.com/.

Discussion of DJGPP and questions about its usage or features are

through the djgpp news group (post to comp.os.msdos.djgpp) and djgpp

mailing list (send your messages to <djgpp@delorie.com>, subscribe

through <listserv@delorie.com>).  Look on the web page for information

on the latest versions of various DJGPP packages.
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------

-------------------------------------------------------------------------------
  approximative build history (the basic procedure is described in the DJGPP FAQ ).
-------------------------------------------------------------------------------

Note : you don't have to modify the original sources

	you need :
		gcc 2.7.2
		binutils 2.5.2  (does 2.6 does not assemble correctly ?)
		The librairies from DJGPP v2
		The include files from DJGPP v2 
---------------------

mkdir DJGPP
cd DJGPP

-------------------
#extract gnu binutils with gnutar
tar xfz ../binutils-2.6.tar.gz


cd binutils-2.6
configure  --target=i386-coff-go32

make CFLAGS=-O

	mkdirs /usr/local/i386-go32-msdos/bin #on a NeXT
	mkdir -p /usr/local/i386-go32-msdos/bin #on a sun 


     cd ../cd binutils-2.6
     cd binutils
     cp ar c++filt objcopy objdump size /usr/local/i386-go32-msdos/bin
     cp nm.new /usr/local/i386-go32-msdos/bin/nm
     cp strip.new /usr/local/i386-go32-msdos/bin/strip
     
     cd ../gas
     cp as.new /usr/local/i386-go32-msdos/bin/as
     cp gasp.new /usr/local/i386-go32-msdos/bin/gasp
     
     cd ../ld
     cp ld.new /usr/local/i386-go32-msdos/bin/ld
#The assembler of binutils 2.6 does not work correctly
	#installing bin-utils 2.5
		make CC=gcc "CFLAGS=STDC_HEADERS" #"CFLAGS=STDC_HEADERS" is for next
		cd gas
		cp as.new /usr/local/i386-go32-msdos/bin/as
     	cp gasp.new /usr/local/i386-go32-msdos/bin/gasp

-------------------
# PART 2 the compiler gcc

cd ..
tar xfz ../gcc-2.7.2.tar.gz
cd gcc-2.7.2
configure --target=i386-go32-msdos
make CFLAGS=-O
 cc1  #would be better on Unix to use CC=gcc
make CFLAGS=-O
 cc1obj #ObjC
make CFLAGS=-O
 cc1plus
make CFLAGS=-O
 cccp
make CFLAGS=-O
 xgcc
make CFLAGS=-O g++-cross



ll cc*
-rwxrwxr-x  1 beeped   1257616 Mar 21 19:32 cc1*
-rwxrwxr-x  1 beeped   1335308 Mar 21 19:34 cc1obj*
-rwxrwxr-x  1 beeped   1681552 Mar 21 20:03 cc1plus*
-rwxrwxr-x  2 beeped    121084 Mar 21 19:07 cccp*
-rw-rw-r--  1 beeped     15823 Mar 30  1995 cccp.1
-r--r--r--  1 beeped    284835 Oct 26 15:07 cccp.c
-rw-rw-r--  1 beeped    107800 Mar 21 19:06 cccp.o


		
#installing gcc-dos
	cd ../../gcc-2.7.2
	 cp xgcc /usr/local/bin/gcc-dos
     cp cc1 /usr/local/i386-go32-msdos/bin/cc1
     cp cccp /usr/local/i386-go32-msdos/bin/cpp
	cp cc1plus cc1obj /usr/local/i386-go32-msdos/bin/
#g++
	cd gcc-2.7.2
	cp g++-cross /usr/local/bin/g++-dos 
	cd /usr/local/bin
	ln -s gcc-dos i386-go32-msdos-gcc
	
# Installing the librairies and the includes
#
	mkdir /usr/local/djgpp
	mkdirs  /usr/local/lib/gcc-lib/i386-go32-msdos/2.7.2
		
	cp -r /private/tmp/O_djdev200/lib /usr/local/djgpp/
	
	
	#Installing libg++ and libobc
	cp /private/tmp/O_lgp271b/lib/* /usr/local/djgpp/lib

	cp -r /private/tmp/O_djdev200/include /usr/local/djgpp/
	cd /usr/local/djgpp/lib ; ln -s libgpp.a libstdc++.a
    cd /usr/local/lib/gcc-lib/i386-go32-msdos/2.7.2

	#the objC include files
	cp -r /usr/local/lib/gcc-lib/m68k-next-nextstep3/2.7.2/include/objc /usr/local/djgpp/include
	
	#install
	  ln -s /usr/local/djgpp/include .
     ln -s /usr/local/djgpp/lib/* .
	 chmod a+r /usr/local/djgpp/lib/*
	 
	 
	cd include
    dos2unix * */* # my perl script

	dos2unix lib/djgpp.lnk
	Change lib/djgpp.lnk to use "coff-i386" instead of "coff-go32" 
	chmod a+r * */* */*/* */*/*/*
	chmod a+x *
	cd include
	chmod a+x debug sys libc libm machine inlines netinet
	cd ..
# Build `stubify' and install it in `/usr/local/i386-go32-msdos/bin'.
	
	found the source in djcrx200.zip
	cd /LocalApps/tools/FTP/DJGPP/stub
    55  ls
    56  dos2unix *
    57  cc -O stubify.c -o stubify
    58  stubify
 
 	#Install :
		cp /LocalApps/tools/FTP/DJGPP/stub/stubify /usr/local/i386-go32-msdos/bin/
		
		
		
		
#Making an archive
cp README /usr/local/djgpp/README
gtar cfzP x_gcc-dos_272.b.N.tar.gz  /usr/local/i386-go32-msdos /usr/local/djgpp /usr/local/bin/gcc-dos /usr/local/bin/g++-dos /usr/local/lib/gcc-lib/i386-go32-msdos/2.7.2 /usr/local/bin/g++-dos/i386-go32-msdos-gcc

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.