Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

mkshlib(1)



          CHKSHLIB(1)          INTERACTIVE UNIX System          CHKSHLIB(1)



          NAME
               chkshlib - compare shared libraries tool

          SYNOPSIS
               chkshlib [-b] [-i] [-n] [-v] file1 [file2 file3 ... ]

          DESCRIPTION
               chkshlib checks for compatibility between files.  Input
               files can be combinations of host shared libraries, non-
               stripped target shared libraries, and non-stripped execut-
               able files.  A file is compatible with another file if every
               library symbol in it that should be matched is matched in
               the second (i.e., the symbol exists and has the same address
               in both files). The path name for the target shared library
               in both files must be identical (unless the -i option is
               set).

               It is possible for file1 to be compatible with file2 without
               the reverse also being true.

               If one incompatibility is found it is reported to stdout and
               processing stops (unless the -v option is set).

               The options to chkshlib are:

               -v   Cause verbose reporting of all incompatibilities to
                    stdout.

               -b   If there are symbols found in file1 that are not in the
                    bounds of file2, report warning messages to stderr.

               -i   Turn off the restriction that the path names for the
                    target shared library need to be identical for two
                    files to be compatible.

               -n   Indicate that there are exactly two input files, which
                    are target shared libraries, where the first references
                    symbols in the second ("includes" the second).

               The output of chkshlib depends upon the input.  If the first
               input file is an executable file and the other input files,
               if any, are target shared libraries, the output states
               whether or not the executable file can execute using each
               target shared library.  If there are no target shared
               libraries supplied, chkshlib performs the compatibility
               check against the target shared libraries specified in the
               .lib section of the executable file.

               If the first input file is an executable file and the other
               input file(s) is a host shared library, the output states
               whether or not the executable file could have been produced
               using each host.



          Rev. C Software Development Set                            Page 1





          CHKSHLIB(1)          INTERACTIVE UNIX System          CHKSHLIB(1)



               If one input file is a host shared library and the other
               input file, if any, is a target shared library, the output
               states whether or not the host shared library could produce
               executable files that will run with the target shared
               library.  If no target shared library is supplied, then
               chkshlib performs the compatibility check against the target
               specified in the .lib section of the library definition file
               found in the host.

               If both input files are target shared libraries or both
               input files are host shared libraries, the output states
               whether or not the first file could replace the second and
               vice versa.










































          Rev. C Software Development Set                            Page 2





          CHKSHLIB(1)          INTERACTIVE UNIX System          CHKSHLIB(1)



               If both input files are target libraries and the -n option
               is set, the output states if the first file references sym-
               bols in the second file ("includes" the second).

               Compatibility of all other combinations of host shared
               libraries, target shared libraries, and executable files has
               no useful meaning, and these other combinations of files are
               not accepted as valid input to chkshlib.

          SEE ALSO
               mkshlib(1).

               "Shared Libraries" chapter in the UNIX System V Programmer's
               Guide.

          DIAGNOSTICS
               Exit status is 0 if no incompatibilities are found, 1 if an
               incompatibility is found, and 2 if a processing error
               occurs.

          CAVEAT
               chkshlib requires that you use the -i option whenever you
               use the -n option.

               Standard binaries distributed with the UNIX system are
               stripped, and chkshlib cannot be used with them.





























          Rev. C Software Development Set                            Page 3



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026