library impacts summary
 |
| |
|

This impact class contains impacts related to shared and archive
libraries, including the standard C library (libc). Many of these
impacts require you to modify your source code.
|
HP-UX 11i (B.11.22) and later HP-UX versions running on the Itanium
architecture use the ELF (Executable and Linking Format) standard for both
32-bit (ELF32) and 64-bit (ELF64) applications. This is different from
earlier releases of HP-UX 11i. HP-UX 11i (B.11.11) uses ELF64 for 64-bit
applications, but uses the COFF (Common Object File Format) standard for
32-bit applications.
HP-UX 11i (B.11.22) and later HP-UX versions do not provide system
libraries in archive format, and the use of archive libraries has been
deprecated in HP-UX 11i (B.11.11). This change was introduced to reduce
the number of issues caused by symbol collisions between archive and
shared libraries. HP-UX 11i uses dynamically bound applications by
default.
A small archive library, libcres.a, is provided for customers
running performance-critical applications who wish to link statically. This
library provides a subset of the standard libc functions.
Statically linking libc is not supported on HP-UX 11i (B.11.11)
and is not available on HP-UX 11i (B.11.22) and later. The functions included
in libcres.a are as follows:
abs() |
bsearch() |
div() |
ffs() |
insque() |
labs() |
ldiv() |
memchr() |
memcmp() |
memcpy() |
memmove() |
memset() |
strcat() |
strchr() |
strcmp() |
strcpy() |
strcspn() |
strlen() |
strncat() |
strncmp() |
strncpy() |
strrchr() |
strspn() |
strstr() |
swab() |
The functions in libcres cannot be preempted but
libc functions can be. Therefore, user libraries cannot contain
functions with these names when using libcres. Detailed
information on the use of libcres.a is available in the
libcres.a(5) reference page.
The math library (libm) on HP-UX 11i (B.11.22) provides C99
math compliance. HP-UX 11i (B.11.11) does not currently provide full C99 math
support. HP aC++ provides support for float (32-bit),
double (64-bit), extended (80-bit), and long
double (128-bit) floating-point calculations. The
extended type is not enabled by default and requires the
-fpwidetypes option.
The standard C library (libc) provides standard APIs as well
as extensions. HP-UX 11i provides UNIX 95 and partial UNIX 98 compliance.
Applications developed based on these standards are highly portable.
Note: To include only library impacts when running the
scansummary and scandetail tools, use the option:
+C LIB
To exclude these impacts, use the option:
-C LIB
For more information on filtering output in reports, see Filtering the Output.
|
|