Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX 11i Release Notes: HP 9000 Computers > Chapter 12 Compatibility

Compatibility from HP-UX 11.0 to 11i

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

Hewlett-Packard has a long record of providing HP-UX compatibility. This protects your investment and allows you to easily upgrade your systems. HP has always recognized that HP-UX compatibility is an important feature that HP customers expect.

IMPORTANT:

To guarantee compatibility, use the new Superdome Machine Identifier. The uname -i command on your Superdome systems may not return a unique value for each system. To guarantee compatibility on current and future platforms, use the new interfaces to getconf(1) and confstr(3C) to retrieve unique machine identifiers.

These interfaces are documented in the manpages and in Chapter 13 “Programming” of this document.

Compatibility requirements span across HP-UX products to third party products as well. All third party products (and products the third party products call) are equally important components in the complete customer environment. Customer solutions often have complex, multiple chains of dependent applications spanning the entire range of HP-UX products as well as third party products. One broken link in the chain of dependencies may result in an application that no longer works. The unbroken string of compatibility support on HP-UX is one of the biggest and best benefits provided by HP.

NOTE:

11.0 applications will continue to run on HP-UX 11i. . For compatibility issues relevant to a particular component, refer to the information in this document that describes that component.

HP-UX supports forward compatibility from 11.0 to 11i. This chapter will describe what this means for executable applications, object files, source files, data, and libraries, and will also discuss compatibility exceptions.

The following types of compatibility are supported from 11.0 to 11i for well-behaved applications:

  • Binary compatibility

  • Source compatibility

  • Data compatibility

  • Relocatable object compatibility

  • Upgrade compatibility

Known exceptions to compatibility are described below.

A well-behaved application adheres to the following characteristics:

  • Uses only documented, public APIs

  • Adheres to the required practices that are specifically documented

  • Does not use documented features that are specifically described as having platform, architecture, or configuration limitations

  • Does not decompose an HP-UX product and then reuse the results of the decomposition

Binary Compatibility

An application that ran on HP-UX 11.0 will continue to run with the same behavior on 32-bit and 64-bit HP-UX. An executable is a binary file that has been processed by the HP link editor with ld or indirectly with the compiler, and can be run by the HP-UX loader (exec).

Source Compatibility

Software that compiled on an HP-UX 11.0 release can be recompiled without change on HP-UX 11i. The term "source" includes input source to compilers, scripts, and makefiles.

Data Compatibility

An application can continue to access persistent data files, such as system files, backup/recovery formats, and HP-documented data formats via supported APIs in the same manner as the previous release. For example, applications should access the password file information via getpwent() rather than directly reading the file in order to maintain data compatibility.

Relocatable Object Compatibility

A relocatable object can be a file (.o), shared library (.sl), or an archive library (.a).

Several types of object binary compatibility are included here:

  • Release-to-release relocatable object binary compatibility - an executable created by linking with forward-compatible, relocatable objects from different releases or using shl_load() and dlopen() to dynamically load shared libraries built on a different release than the application is ONLY SUPPORTED from HP-UX 11.0 to 11i.

    However, linking pre-HP-UX 11.0 libraries and HP-UX 11.0 and 11i libraries in one relocatable object/executable is NOT SUPPORTED.

NOTE: The linker will permit the linking of pre-HP-UX 11.0 libraries and HP-UX 11.0 and 11i libraries in one relocatable object/executable and will not exhibit any warning or error messages, but the executable may exhibit incorrect behavior.
  • Archive and shared relocatable object compatibility - an executable created by linking with a shared library that has dependencies on an archive library. This situation typically occurs when linking with archive system libraries. THIS IS NOT SUPPORTED.

  • Data model relocatable object compatibility - an executable created by linking with a mixture of 32-bit and 64-bit objects. THIS IS NOT SUPPORTED. The loader will not permit this.

Upgrade Compatibility

Customized configurations and data from HP-UX 11.0 are preserved upon installation and upgrade to HP-UX 11i.

HP-UX 10.x Applications on HP-UX 11i

HP-UX 10.x applications that compiled and ran on 11.0 can be recompiled and run on HP-UX 11i without change.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 1983-2000 Hewlett-Packard Development Company, L.P.