Open System Services Programmer's Guide
TIP: The OSS Core Utilities User Commands appendix in the Open System Services User's
Guide provides details for viewing the vim(1) reference page.
C Development Utilities
Open System Services provides a variety of tools to assist you in developing C applications. The
following are some of the more useful programming tools:
• ar, which creates and maintains groups of one or more named files as a single library file
written in an archive format. If the archive contains object files, the archive can be used as
an object file library by the Binder. For detailed information, refer to the ar(1) utility reference
page either online or in the Open System Services Shell and Utilities Reference Manual.
• GNU Diffutils
2
, which is a package of several programs related to finding differences between
files. The GNU Diffutils provides the GNU cmp, diff, diff3, and sdiff commands. For
detailed GNU Diffutils information, see the corresponding OSS Core Utilities reference page,
such as cmp(1).
• lex, which allows you to create structured input analyzers. You provide regular expressions
that specify what you want to find in the input stream and lex generates a C language lexical
analyzer from these rules that provides tokens for your application. The lex utility is often
used in conjunction with yacc, which parses the stream of tokens that the lexical analyzer
produces. For detailed information, refer to the Open System Services User’s Guide and to
the lex(1) utility reference page either online or in the Open System Services Shell and
Utilities Reference Manual.
• make, which maintains program dependencies. The make utility is useful in combining your
program modules into a coherent application and enabling you to maintain individual modules.
For detailed information, refer to the Open System Services User’s Guide and to the make(1)
utility reference page either online or in the Open System Services Shell and Utilities Reference
Manual.
Additionally, the GNU make utility
2
is included in the OSS Core Utilities (T1202) product.
For detailed information about the GNU make utility, see the OSS Core Utilities make(1)
reference page.
• nm, which lists symbolic information appearing in an object file, executable file, or object-file
library. For detailed information, refer to the nm(1) utility reference page either online or in
the Open System Services Shell and Utilities Reference Manual.
• patch
2
, which takes a patch file containing a differences listing produced by the diff
program and applies those differences to one or more original files, producing patched
versions. For detailed information about the GNU patch utility, see the OSS Core Utilities
patch(1) reference page.
• strip, which removes any information not required for executing files. Do not use strip
before using the symbolic debuggers, because strip removes the symbol region required
for symbolic debugging. For detailed information, refer to the strip(1) utility reference
page either online or in the Open System Services Shell and Utilities Reference Manual.
• yacc, which enables you to generate parsing programs. This utility is useful if, for example,
your application has an input language. You supply a grammar for the language, and yacc
produces a C program that parses the input stream. The yacc utility is often used in conjunction
with lex, from which it receives tokens. For detailed information, refer to the Open System
Services User’s Guide and to the yacc(1) utility reference page either online or in the Open
System Services Shell and Utilities Reference Manual.
2. Available beginning with the J06.16 and H06.27 RVUs and included in the OSS Core Utilities (T1202) product.
Using the Development Tools 45