|
|
1.1 root 1: How to compile, link and build GNU Emacs under VMS.
2:
3:
4: A runnable Emacs on VMS consists of two files, an exe file and
5: a map file. (It also refers to a DOC file in the [-.etc] sibling directory.
6: These files are made automatically and kept straight by Emacs version number.)
7:
8: For an Emacs being built and tested, these files are `temacs.exe' and
9: `temacs.dump' in this directory.
10:
11: For an installed Emacs, these files are `emacs.exe' and
12: `emacs.dump' in the directory above this one. These names are known
13: only in the file `emacs.com', also in that directory.
14:
15: Before you can run Emacs or compile or build any part of Emacs,
16: you must run `emacs.com'. It sets up logical names that are used
17: by everything else.
18:
19: Before compiling anything on VMS, you must copy `config.h-dist' to
20: `config.h' and make sure it is set up for VMS, using files `m-vax.h'
21: and `s-vms4-4.h'. Also copy `vmspaths.h' to `paths.h'.
22: `paths.h-dist' is for Unix only. (On VMS versions before 4.4, the
23: file names have `_' in place of `-', and you should use `s-vms.h'
24: rather than `s-vms4-4.h'.)
25:
26: Execute `compile.com' to recompile all files that need recompilation.
27: Alternatively, execute `precomp.com' to define a command `ccom' that
28: can be used to recompile individual files. `ccom' works by executing
29: `ccom.com'.
30:
31: If you compile with optimization, note that in compiler version
32: 3.0 there is a bug affecting inline functions. So you must specify
33: /OPTIMIZE=NOINLINE when compiling `dispnew.c'. If you still have problems,
34: try using /NOOPT.
35:
36: Compilation will give you lots of warnings about symbols longer than 30
37: characters. You must just ignore them. Alternatively, you can
38: compile the C program `vms-pp.c' and run all the .c and .h files
39: through that program and then compile the results.
40: (On VMS versions before 4.4, the program is called `vms_pp.c'.)
41:
42: **If you use `vms-pp.c', please save the originals .c and .h files
43: and distribute them rather than the transformed files
44: if you wish to distribute copies of Emacs. Help minimize confusion!**
45:
46: Execute `link.com' to link the compiled files into `temacs.exe'.
47: This process uses `temacs.opt'. You will get lots of linker warnings
48: telling you that there were compiler warnings. Just ignore them.
49:
50: Execute `[-.etc]complink.com' to compile and link the files
51: in the [emacs.etc] directory. This must be done before
52: `[-.etc]makedoc.com' can be run.
53:
54: Execute `[-.etc]makedoc.com' to create or update the file `[-.etc]doc.'.
55: This must be done if that file does not yet exist or if any of
56: the Emacs C sources or preloaded Lisp sources has changed.
57: It must be done before `build.com' is run in order to take effect.
58:
59: Execute `build.com' to run `temacs.exe', initialize it and preload
60: some Lisp code, and dump the map file `temacs.dump' containing a copy
61: of all the impure storage after initialization.
62:
63: Execute `testemacs.com' to define the `runtemacs' command
64: to run `temacs.exe' with its map file `temacs.dump'.
65:
66: To install an Emacs, rename `temacs.dump' as `[-]emacs.dump' and
67: rename `temacs.exe' as `[-]emacs.exe'.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.