B.17 Summary ¶
I have tried to present sufficient information here to allow anyone to be
able to build a Common Lisp system under Mach from the sources. I am sure
there are many tricks that I have learned to use to reduce the amount of grief
necessary to build a system. My best recommendation is to go slowly. Start
by building a system from the sources provided on the tape. Make sure you
are comfortable doing that before you try modifying anything.
Some hints on building the system which you may find useful:
- If you change the compiler, you will have to recompile all the sources before
the change is reflected in a system. Changing the compiler is probably the
most dangerous change you can make, since an error here means that
nothing will work. In particular, this is the time you are going to need
to get familiar with adb and the internal structure of the Lisp, since a
serious error in the compiler will show up during the initialization of the
cold core file.
- Changing the miscops should be done with care. They follow a fairly rigid
convention and you should understand all the information provided in
Internal Design of Common Lisp on the IBM RT PC before making any changes
to miscops. You will probably need to get familiar with adb to debug some of
the changes. Note that this requires building a new cold core file and a final
core file before the change is reflected in the system.
- Changing sources in the code directory should be fairly straight forward. The
only time this will cause trouble is if you change something that a lot of
files depend on in which case you will have to recompile everything and build
a new cold core file and a core file.
- Changing hemlock should have no adverse effect on system integrity.
- If you make a fairly major change, it is a good idea to go through the complete
process of building a core file at least two or three times. If things are
still working at the end of this, your change is probably correct and shouldn’t
cause any serious trouble.
- Finally, always keep at least one backup copy of a good core image around.
If you build a bad core file over an existing one and can’t back up, it is
possible that you may not be able to recover from a serious error.