Solaris Transition Guide

Chapter 4 Using the Compatibility Packages

The SunOS release 5.7 software is neither source nor binary compatible with the SunOS release 4.x software. This means that SunOS release 4.x programs and user applications based on those releases may not run correctly under the Solaris 7 operating environment. Compatibility packages make it possible for these programs to run on a Solaris 7 system.

This chapter briefly discusses two compatibility packages: the SunOS/BSD Source Compatibility Package and the Binary Compatibility Package. These packages make the transition easier by enabling you to use SunOS release 4.x commands and applications while your environment and applications migrate to the Solaris 7 operating environment.

Some SunOS release 4.x commands are not available in the Solaris 7 operating environment. Others exist, but have changed. For information about changes to SunOS release 4.x commands in the Solaris 7 operating environment, see Appendix A, Commands Reference Table.

Why Port Applications?

Although the SunOS Binary Compatibility Package and the SunOS/BSD Source Compatibility Package allow you to use applications as they are, you should port applications as soon as possible. Long-term reliance on the compatibility packages is not advised for the following reasons:

SunOS/BSD Source Compatibility Package

The SunOS BSD/Source Compatibility Package is an optional package available with the Solaris 7 operating environment. The package contains a collection of SunOS release 4.x and BSD commands, library routines, and header files otherwise not available with the Solaris 7 operating environment. The Binary Compatibility Package must be installed in order to use the SunOS/BSD Source Compatibility Package.

The interfaces in the SunOS/BSD Source Compatibility Package are installed in the /usr/ucb directory, thereby avoiding conflicts with existing SunOS release 5.7 interfaces. These interfaces provide a familiar SunOS environment while your environment and applications are migrating to the SunOS release 5.7 software. To use these interfaces, you must either specify the full path name or modify your PATH environment variable. When modifying your PATH environment variable, note that /usr/ucb should precede /usr/bin.

For detailed information about the Source Compatibility Package, see Source Compatibility Guide

Binary Compatibility Package

The Binary Compatibility Package is an optional package available with the Solaris 7 operating environment. The package allows existing SunOS release 4.x applications, both statically and dynamically linked, to run under the Solaris 7 operating environment without modification or recompilation. It handles most binary interface discrepancies between the two releases transparently. This results in a Solaris 7 operating environment where SunOS release 4.x applications can run properly.

See Binary Compatibility Guide for procedures about setting up your environment to access this package. This guide also details the limitations of the Binary Compatibility Package.

Using the Binary Compatibility Package to Run SunOS Release 4.x Applications

The Binary Compatibility Package allows most applications to run under the Solaris 7 operating environment, making them available for use before they are ported to SunOS release 5.7. With this package, well-behaved application binaries based on SunOS release 4.x system software will run under the SunOS release 5.7 software without modifications or recompilation.

The Binary Compatibility Package is intended for end-user environments, not for use as a development environment. All SunOS release 5.7 application development should be done under the base SunOS release 5.7 environment.