HP-UX HB v13.00 Ch-11 - Software Development

HP-UX Handbook Rev 13.00 Page 40 (of 101)
Chapter 11 Software Development
October 29, 2013
Related Products
All compiler frontends (including the bundled cc) use the same linker (/usr/ccs/bin/ld) to
create their executables. The linker is not part of any compiler. The same applies to many tools
described in the tools section. Linker and linker tools are installed with HP-UX in the filesets
OS-Core.C-KRN
OS-Core.C-MIN
OS-Core.CMDS-AUX
Upgrades for these filesets as well as for several other development related filesets are always
released as patches.
Runtime Environments
Every program, no matter in which language is was written, needs a runtime environment. A
runtime environment usually consists of one or more shared libraries and possibly other
resources that are needed to execute these programs. The following table gives an overview to
the runtime environments for each programming language:
Programming Language
Runtime Libraries
Shipped with
any
libc.sl/.so
HP-UX core
Fortran
libcl.sl/.so
HP-UX core
aC++
libCsup.sl/.so
libCsup_v2.sl/.so
libstd.sl/.so
libstd_v2.sl/.so
libstream.sl/.so
librwtool.sl/.so
HP-UX core
libc.sl/.so is the central library of every Unix OS. Every executable, except if it was
completely archive bound, needs it. That's why it is not part of a programming language's
runtime environment. It belongs to the HP-UX runtime environment.
libcl.sl/.so is the language support library. It provides features that are special to the
different languages, e.g. fortran I/O, and other useful things like stack unwind functions. Since
HP-UX 11iv2, this library has been split up, so that programs can link only the part that is really
required, e.g. now there exists a separate libunwind.so which contains the stack unwind
functions. Details about that can be found in the HP-UX 11iv2 release notes which are available
at the HP website and on any system running HP-UX 11iv2 or later:
http://h20000.www2.hp.com/bc/docs/support/SupportManual/c01917247/c01917247.pdf