# 2.11BSD#431 - /usr/man/cat1/symcompact.0

    symcompact(1)	    UNIX Programmer's Manual	    symcompact(1)

    NAME
         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 symbols beginning with a tilde).  In a nono-
         verlaid 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 addi-
         tional strings to be placed in the string table.  Running
         strcompact again after running this program fixes this prob-
         lem.

         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 overlaid executable is being created.

    Printed 11/26/99	January 25, 1994			1

Generated: 2016-12-26 | Generated by man2html V0.25 page hit count: 499 |