2000-05-06 21:34:20 +02:00
|
|
|
To build the operating system, a batch file (BUILD.BAT) is included
|
|
|
|
to make life easier. This file is in the FDKERNEL directory of the
|
|
|
|
distribution. In addition, there is a corresponding batch file
|
|
|
|
(CLEAN.BAT) to clean up the source directories.
|
|
|
|
|
2002-01-27 02:13:07 +01:00
|
|
|
There is a CONFIG.B file that specifies all the paths and names of
|
2000-05-06 21:34:20 +02:00
|
|
|
the compiler, assembler, etc. that you want to use. You MUST copy
|
2002-01-27 02:13:07 +01:00
|
|
|
it to CONFIG.BAT first, then edit it to reflect your setup.
|
2000-05-06 21:34:20 +02:00
|
|
|
|
|
|
|
The reason for this copying of files is that when new releases of the
|
|
|
|
kernel come out, you can extract them over your previous source, and
|
|
|
|
not have to worry about resetting up your configuration because your
|
2002-01-27 02:13:07 +01:00
|
|
|
CONFIG.BAT file will not get replaced!
|
2000-05-06 21:34:20 +02:00
|
|
|
|
2000-08-15 05:42:17 +02:00
|
|
|
You will also need to download the latest version of NASM and Turbo C
|
|
|
|
2.01. Install Turbo C and NASM somewhere (it doesn't really matter
|
|
|
|
where) and then be sure to edit the CONFIG.MAK file to reflect where
|
|
|
|
you put the tools.
|
2000-05-06 21:34:20 +02:00
|
|
|
|
2001-07-10 00:19:33 +02:00
|
|
|
*TE******* Make sure to use the NASMR version, as the DosExtender version
|
|
|
|
_seems_ to produce wrong code. the tested version is
|
|
|
|
NASM98R, 06/04/99, 202.606 bytes.
|
2001-11-04 20:47:39 +01:00
|
|
|
*Bart***** This is probably only true for Windows NT/2k/XP; In that
|
|
|
|
case you could use the Win32 version anyway.
|
|
|
|
Look at
|
|
|
|
ftp://ftp.kernel.org/pub/software/devel/nasm
|
|
|
|
or a mirror of ftp.kernel.org.
|
2001-07-10 00:19:33 +02:00
|
|
|
|
|
|
|
|
2000-05-06 21:34:20 +02:00
|
|
|
This program will now compile with Turbo C 2.01 (now freely
|
|
|
|
available!), Turbo C 3.0, Borland C 4.51 & 5.01. It should work with
|
2002-01-27 02:13:07 +01:00
|
|
|
other Borland compilers, Microsoft C and Watcom C.
|
2000-05-06 21:34:20 +02:00
|
|
|
|
|
|
|
If you feel hardy, read on to understand the directory structure. A
|
|
|
|
more complete description of the build environment is contained in a
|
|
|
|
companion book, "The FreeDOS Kernel" (ISBN: 0-87930-436-7) published
|
|
|
|
by R&D Books, an imprint of Miller Freeman of Lawrence, Kansas (USA)
|
|
|
|
and distributed in the USA and Canada by Publishers Group West. See
|
|
|
|
the file README.TXT for more details.
|
|
|
|
|
|
|
|
|
|
|
|
Directory Structure
|
|
|
|
-------------------
|
|
|
|
|
|
|
|
fdkernel root directory
|
|
|
|
+-----bin holds image of distribution disk
|
|
|
|
+-----boot boot.bin (boot sector)
|
|
|
|
+-----docs documentation directory
|
|
|
|
+-----drivers DEVICE.LIB
|
|
|
|
+-----hdr common *.h files
|
|
|
|
+-----kernel The kernel itself
|
|
|
|
+-----lib LIBM.LIB and DEVICE.LIB
|
|
|
|
+-----sys SYS.COM and supporting programs
|
|
|
|
+-----utils Miscellaneous utilities
|
|
|
|
|
|
|
|
|
|
|
|
Organization in a nutshell
|
|
|
|
--------------------------
|
|
|
|
Each component or group of utilities is segregated into its own
|
|
|
|
directory. In order to build that component or utility, a makefile
|
|
|
|
exists in the directory that bears the component's or utility's
|
|
|
|
basename.
|
|
|
|
|
|
|
|
Each makefile has at least two targets, production and clean. The
|
|
|
|
target production builds the expected component or utility and the
|
|
|
|
component clean cleans up the directory for distribution. The
|
|
|
|
makefile may have at least one additional target that builds the
|
|
|
|
component. Study the makefile to better understand this.
|
|
|
|
|
|
|
|
---------------------------------------------------------------------
|
|
|
|
|
|
|
|
$Id$
|
|
|
|
|
2001-11-18 00:26:45 +01:00
|
|
|
Log: build.txt,v
|
2000-08-15 05:42:17 +02:00
|
|
|
Revision 1.3 2000/08/15 03:42:17 jhall1
|
|
|
|
update to the build.txt file to remove references to the now-defunct
|
|
|
|
web site at gcfl.net (John's old site).
|
|
|
|
|
2000-05-08 06:30:00 +02:00
|
|
|
Revision 1.2 2000/05/08 04:27:48 jimtabor
|
|
|
|
Update CVS to 2020
|
2000-05-06 21:34:20 +02:00
|
|
|
|
|
|
|
Revision 1.2 1999/08/25 04:12:31 jprice
|
|
|
|
update
|
|
|
|
|
|
|
|
Revision 1.1 1999/08/25 03:46:41 jprice
|
|
|
|
New build config
|
|
|
|
|