Solaris 移行ガイド

第 4 章 互換パッケージの使用方法

SunOS 5.6 は、SunOS 4.x ソフトウェアとはソースレベルの互換性も、バイナリレベルの互換性もありません。つまり、リリース 4.x に基づくプログラムやユーザアプリケーションは、Solaris 7 環境では正しく動作しません。しかし互換パッケージを使うことによって、これらのプログラムを Solaris 7 システムで動作させることができます。

この章では、SunOS/BSD ソース互換パッケージと、バイナリ互換パッケージという、2 つの互換パッケージについて簡単に説明します。これらのパッケージは、環境とアプリケーションを Solaris 7 環境に移行する間、SunOS リリース 4.x のコマンドやアプリケーションを使用できるようにして、移行を容易にするものです。

SunOS 4.x のコマンドの一部は、Solaris 7 では利用できません。Solaris 7 にはあっても、変更されているコマンドもあります。Solaris 7 環境で変更されている SunOS 4.x のコマンドに関する詳細は、付録 A 「コマンドリファレンス」 を参照してください。

アプリケーションを移植する理由

SunOS のバイナリ互換パッケージと SunOS/BSD ソース互換パッケージを使用すると、そのままでアプリケーションを利用することができます。ただし、なるべくアプリケーションを移植するようにしてください。次の理由から、互換パッケージを長期的に使用することは推奨できません。

SunOS/BSD ソース互換パッケージ

SunOS/BSD ソース互換パッケージは、 Solaris 7 環境で利用できる、オプションのパッケージです。このパッケージは、SunOS 4.x と BSD のコマンド、ライブラリルーチン、ヘッダファイルのうち、互換パッケージがないと Solaris 7 環境で利用できないものから構成されています。SunOS/BSD ソース互換パッケージを使用するときは、バイナリ互換パッケージもインストールしなければなりません。

SunOS/BSD ソース互換パッケージのインタフェースは、 /usr/ucb ディレクトリにインストールされるので、SunOS 5.6 の既存のインタフェースとの衝突を避けることができます。これらのインタフェースは、環境とアプリケーションを SunOS 5.6 ソフトウェアに移行する間、今まで慣れていた SunOS の環境を提供するものとなります。これらのインタフェースを使用するには、フルパス名を指定するか、 PATH 環境変数を変更するか、どちらかが必要です。PATH 環境変数を変更する場合は、 /usr/bin より先に /usr/ucb を記述すべきことに注意してください。

ソース互換パッケージに関する詳細は、『Solaris Source Compatibilty Guide』を参照してください。

バイナリ互換パッケージ

バイナリ互換パッケージは、Solaris 7 環境で利用できるオプションのパッケージです。このパッケージを使用すると、SunOS 4.x の既存のアプリケーションが実行時に静的または動的なリンクを行い、変更や再コンパイルを行うことなく Solaris 7 環境で動作することができます。2 つのリリースの間には、バイナリインタフェースの違いが存在しますが、このパッケージはユーザにそれらを意識させることなく、ほとんどの違いを処理します。この結果、Solaris 7 環境で、SunOS 4.x のアプリケーションが正しく動作します。

このパッケージにアクセスする環境を設定する方法は、『バイナリ互換性ガイド』を参照してください。このマニュアルは、バイナリ互換パッケージの制約についても詳細に説明しています。

SunOS 4.x のアプリケーションを実行するためのバイナリ互換パッケージの使用方法

バイナリ互換パッケージを使用すると、Solaris 7 環境でほとんどのアプリケーションを動作させることができるので、SunOS 5.6 に移植するまでの間、それらのアプリケーションを利用することができます。このパッケージを使うと、「お行儀の良い」アプリケーションは、変更や再コンパイルを行うことなく、SunOS 5.6 の下で動作します。

バイナリ互換パッケージは、開発環境ではなく、エンドユーザの環境で使用することを想定しています。SunOS 5.6 ソフトウェアのアプリケーションの開発は、SunOS 5.6 の環境で行うようにしてください。