1symcompact(1) General Commands Manual symcompact(1)
2
3
4
6 symcompact - string compaction for object files
7
9 symcompact [ object_name ... ]
10
12 symcompact reduces the symbol table size of an executable file. This
13 is done by removing unnecessary overlay transfer vectors (text symbols
14 beginning with a tilde). In a nonoverlaid program there is no need for
15 both the underscore (_foo) and tilde (~foo) text symbol and only the
16 underscore form is kept. For overlaid programs if the symbol is in the
17 base segment the tilde form is not needed and again only the underscore
18 form is preserved. Running symcompact typically reduces the kernel
19 symbol table size by 250 or so symbols.
20
21 It is possible to run both symcompact and strcompact to achieve an even
22 higher degree of symbol and string table compaction. The normal
23 sequence is to run symcompact first followed by strcompact. If symcom‐
24 pact runs out of memory it will be necessary to reverse the order and
25 run symcompact a second time - see the BUGS note below.
26
27 The user must have write permission to the object/executable file.
28
29 symcompact writes to stderr the count of symbols removed from the sym‐
30 bol table.
31
32 symcompact exits 0 if successful, and >0 if an error occurred.
33
35 symcompact(1), symorder(1)
36
38 This program can partially negate the benefits of strcompact because
39 multiple references to identical strings cause additional strings to be
40 placed in the string table. Running strcompact again after running
41 this program fixes this problem.
42
43 The register local symbol type is removed from the executable/object
44 file. Since the debugger really doesn't know how to deal with those
45 symbols this is not much of a loss and saves quite a bit of space both
46 in the symbol table and the string table.
47
48 symcompact should not be run on .o files that will be passed to the
49 linker. The linker will need the tilde form of the symbol if an over‐
50 laid executable is being created.
51
52
53
543rd Berkeley Distribution January 25, 1994 symcompact(1)