100 lines
4.1 KiB
Plaintext
100 lines
4.1 KiB
Plaintext
|
This file is intended to be a short guide for getting AS compiled on
|
||
|
a Unix-like operating system. If you are interested in a more in-depth
|
||
|
discussion of the source code of AS, take a look in the appropriate chapter
|
||
|
of the AS user's manual (german resp. english version located in the doc_DE/
|
||
|
resp. doc_EN/ subdirectory). I highly recommend reading this chapter before
|
||
|
you make extensions or modifications to the source code.
|
||
|
|
||
|
The installation process consists of the following steps:
|
||
|
|
||
|
(1) see if there are additional README files for your platform
|
||
|
(2) create a Makefile.def
|
||
|
(3) compile
|
||
|
(4) execute the test suite
|
||
|
(5) build the documentation
|
||
|
(6) install into the system directories
|
||
|
|
||
|
Step (1):
|
||
|
|
||
|
On some (especially non-Unix) platforms, some additional preliminaries
|
||
|
are needed:
|
||
|
|
||
|
--> If you do not have a C compiler conforming to the ANSI standard,
|
||
|
take a look into 'README.KR'.
|
||
|
|
||
|
--> For MS-DOS and OS/2 platforms, additionally read README.DOS resp.
|
||
|
README.OS2
|
||
|
|
||
|
Step (2):
|
||
|
|
||
|
Settings that may vary from platform to platform are located in a file
|
||
|
called 'Makefile.def'. Your task is either to select an approriate file
|
||
|
from the 'Makefile.def-samples' directory, or to create an own one. I know
|
||
|
this is a bit tedious process, and one day I will probably replace this
|
||
|
scheme with an autoconf-style configuration, but for now we will have to
|
||
|
live with it. A good starting point for a gcc-based, 'normal' Unix system
|
||
|
is the file 'Makefile.def.tmpl'. The settings to make include:
|
||
|
|
||
|
- CC, LD, CFLAGS, LDFLAGS: The compiler and linker you want to use (nice
|
||
|
if you have more than just 'cc' on your machine), plus flags that should
|
||
|
be passed to them. like optimization settings and libraries needed for
|
||
|
linking.
|
||
|
|
||
|
- BINDIR, INCDIR, MANDIR, LIBDIR, DOCDIR: directiories where AS should be
|
||
|
placed after compilation.
|
||
|
|
||
|
- CHARSET: character encoding for non ASCII national special characters.
|
||
|
If your system is absolutely 8-bit-unclean, the ASCII7 setting is a good
|
||
|
idea. Most modern Unix systems default to ISO8859-1, and the IBM437
|
||
|
resp. IBM850 settings are only needed for DOS and OS/2 platforms.
|
||
|
|
||
|
Step (3):
|
||
|
|
||
|
Compilation should be a simple matter of saying 'make' and waiting...
|
||
|
depending on your machine, compliation time can be between a few minutes
|
||
|
(a modern Pentium-based PC or a fast Alpha) and a day (VAXstation 2000).
|
||
|
A few compilers (like newer egcs releases or Borland-C) are known to
|
||
|
generate a lot of warnings about ambigious statements or unused parameters.
|
||
|
I will try to eliminate them when time permits, but I have no high priority
|
||
|
for doing this since they are harmless.
|
||
|
|
||
|
If you are compiling AS for a new platform, you will probably run into
|
||
|
an error message saying that you have to edit 'sysdefs.h'. This file
|
||
|
collects information about the anomalies and specialities of certain
|
||
|
systems. The include file detects a system by querying macros the compiler
|
||
|
predefines and makes the appropriate definitions. The file is sorted by
|
||
|
|
||
|
1. processor architecture
|
||
|
2. manufacturer
|
||
|
3. operating system
|
||
|
|
||
|
Find out the preprocessor symbols your compiler defines, make a new section
|
||
|
in 'sysdefs.h' and send it to me so I can include it in the next release of
|
||
|
AS!
|
||
|
|
||
|
Step (4):
|
||
|
|
||
|
Type 'make test' and the freshly compiled AS will be run on a couple of
|
||
|
test programs. For each program, the output is compared to a reference
|
||
|
binary included in the distribution. The binary output has to match
|
||
|
*exactly*, i.e. ther must not be any difference. Any failed test reported
|
||
|
by the script has to be investigated, even if it happens for a target
|
||
|
platform you never intend to use!
|
||
|
|
||
|
Step (5):
|
||
|
|
||
|
The documentation of AS is distributed in LaTeX format. I chose this format
|
||
|
because TeX is available on about any platform suitable for AS I can think
|
||
|
of. Other formats are created by typing 'make docs': simple ASCII, HTML,
|
||
|
and Postscript. You need a TeX distribution including dvips for the latter,
|
||
|
while converters to ASCII and HTML are included.
|
||
|
|
||
|
Step (6):
|
||
|
|
||
|
Type 'make install'. Depending on the target directories you chose in Step
|
||
|
(1), you may have to acquire root privileges to install AS.
|
||
|
|
||
|
Have fun!
|
||
|
|
||
|
Alfred Arnold, alfred@ccac.rwth-aachen.de
|