Visit Our UNIX and Linux User Community

Linux and UNIX Man Pages

Test Your Knowledge in Computers #549
Difficulty: Medium
a = 10; is an example of a unary operation.
True or False?
Linux & Unix Commands - Search Man Pages

symcompact(1) [bsd man page]

symcompact(1)						      General Commands Manual						     symcompact(1)

symcompact - string compaction for object files SYNOPSIS
symcompact [ object_name ... ] DESCRIPTION
symcompact reduces the symbol table size of an executable file. This is done by removing unnecessary overlay transfer vectors (text sym- bols beginning with a tilde). In a nonoverlaid program there is no need for both the underscore (_foo) and tilde (~foo) text symbol and only the underscore form is kept. For overlaid programs if the symbol is in the base segment the tilde form is not needed and again only the underscore form is preserved. Running symcompact typically reduces the kernel symbol table size by 250 or so symbols. It is possible to run both symcompact and strcompact to achieve an even higher degree of symbol and string table compaction. The normal sequence is to run symcompact first followed by strcompact. If symcompact runs out of memory it will be necessary to reverse the order and run symcompact a second time - see the BUGS note below. The user must have write permission to the object/executable file. symcompact writes to stderr the count of symbols removed from the symbol table. symcompact exits 0 if successful, and >0 if an error occurred. SEE ALSO
symcompact(1), symorder(1) BUGS
This program can partially negate the benefits of strcompact because multiple references to identical strings cause additional strings to be placed in the string table. Running strcompact again after running this program fixes this problem. The register local symbol type is removed from the executable/object file. Since the debugger really doesn't know how to deal with those symbols this is not much of a loss and saves quite a bit of space both in the symbol table and the string table. symcompact should not be run on .o files that will be passed to the linker. The linker will need the tilde form of the symbol if an over- laid executable is being created. 3rd Berkeley Distribution January 25, 1994 symcompact(1)

Check Out this Related Man Page

ostrip(1)						      General Commands Manual							 ostrip(1)

ostrip - Reduce the size of object files SYNOPSIS
ostrip [options] file... OPTIONS
The following options are supported by the ostrip command: Removes the section of a linked image. Removes unreferenced symbols and unused type information from the symbol tables of a pre-link file. This results in a smaller on-disk executable file. If files modified with this option are subsequently linked, ostrip -m should be run on the linked image. Joins together two files that were previously split by the -t option into a symbol table file (image.stb) and a stripped image file (image). Removes unreferenced symbols and unused type information for the symbol tables of a post-link executable file. This results in a smaller on-disk executable file. The symbol table still contains all information required for debugging. Decompresses the output of ostrip. This option is provided for cases in which the input file is compressed in ALPHAMAGICZ format. Removes the symbol table and any strippable subsections of the section. (Performs the same operations as the strip command.) Splits an image file (image) into a symbol table file (image.stb) and a stripped image file (image). The symbol table file will contain a checksum of the stripped image. Displays the version of the ostrip command. Produces a reduced symbol table by remov- ing local information. Also deletes any locally strippable subsections of the section. (Performs the same operations as the ld -x com- mand.) Compresses the output of ostrip into ALPHAMAGICZ format. DESCRIPTION
The ostrip command reduces the components of any object file based on the options that are specified. It is designed to work with any object file, that is, files, image files, and shared object files. It does not work with (archive) files. RESTRICTIONS
The following command strips the local symbol table and converts the object file into ALPHAMAGICZ format: ostrip -x -Z obj.o The following command produces the symbol table file osize_mm.stb and the stripped image file ostrip -t The following command joins the symbol table file osize_mm.stb to ostrip -j SEE ALSO
Commands: strip(1), ld(1), mcs(1), objZ(1) ostrip(1)

Featured Tech Videos