Innovating@Sun コミュニティ ご購入について (0120-33-9096) マイ・アカウント 日本 [Change] 日本語

Sun Studio 10
互換性
Sun Studio 10

      機能と特長
      データシート
      システム要件
      ライセンス
      評価ソフトウェアの入手
      アップグレード
      サポート
      Sun Studio 製品ファミリ
    互換性
      FAQs
      ベンチマーク(参考)
      ホワイトペーパー

1996 年から現在に至るまでの Sun Studio 製品に使用されてきた製品名、リリースの日付、 コンパイラのバージョンの概要を次に示します。 また、互換性に関するいくつかの質問にもお答えします。

 
 

新旧製品対応表

製品名 リリース日付 最終発注受付日 コンパイラのバージョン Solaris のバージョン プラットフォーム
C C++ F90
Sun WorkShop 3.0
12/1996
06/2000
4.2
4.2
1.2*
2.4, 2.5, 2.6, 7
SPARC、x86
Sun WorkShop 5.0
03/1999
12/2000
5.0
5.0
2.0*
2.5.1, 2.6, 7
SPARC、x86
Forte Developer 6
06/2000
11/2001
5.1
5.1
6.0*
2.6, 7, 8
SPARC、x86
Forte Developer 6 update 1
11/2000
12/2001
5.2
5.2
6.1*
2.6, 7, 8
SPARC、x86
Forte Developer 6 update 2
08/2001
04/2007
5.3
5.3
6.2*
2.6, 7, 8, 9
SPARC、x86
Sun ONE Studio 7, Compiler Collection
06/2002
12/2003
5.4
5.4
7.0*
7, 8, 9
SPARC
Solaris 用 Sun ONE Studio 7, Enterprise Edition
12/2002
05/2004
5.4
5.4
7.0*
8, 9
SPARC
Sun Studio 8
04/2004
09/2005
5.5
5.5
7.1*
7, 8, 9
SPARC、x86
Sun Studio 9
08/2004
08/2007
5.6
5.6
8.0
8, 9, 10
SPARC、x86
Sun Studio 10
01/25/05
-
5.7
5.7
8.1
8, 9, 10
SPARC、x86
 

* 現在の関連製品の出荷バージョンは、Forte Developer 6 update 2 および Sun Studio 9/10/11 です。上記「リリース日」および「最終受注受付日」は、日本国内における製品の情報です。 (米国における製品情報)

米国情報:
Sun Studio Compatability Chart

* SPARC プラットフォーム用のみ提供

 
 

ソースコードの互換性

言語
互換性
C
完成度と安全性の度合いを考慮し、Sun WorkShop 3.0 から現在にいたるまでのいずれのリリースにも、ソースコードの非互換性は導入されていません。つまり互換性があります。
C++
Sun WorkShop 5.0 リリースは、ISO/ANSI C++ 規格をサポートする Sun における最初のリリースです。そのため、5.0 コンパイラが受け付ける言語と Sun WorkShop 3.0 (C++4.2 と同等) コンパイラが受け付ける言語の間にソースレベルの非互換性が多数存在します。これに関しては、『C++ 移行ガイド』(PDF) に記述されています。このマニュアルは随時更新され、すべての後続するリリースに含まれています。
Fortran 90/95
Sun WorkShop 3.0 および 5.0 リリースには、FORTRAN 77 コンパイラが別個に含まれていました。このコンパイラは、Forte Developer 6 リリースの間は、保守モードに入っていました。Sun は大量のエンジニアリングリソースを投入して、Fortran 90/95 の優れたコンパイラを完成させました。Sun ONE Studio 7, Compiler Collection 以降のリリースでは、別個の FORTRAN 77 コンパイラを提供していません。互換性オプション "-f77" が用意されています。FORTRAN 77 コンパイラで利用可能な言語拡張を Fortran 90/95 でも受け付けるためのものです。
 
 
 

バイナリコードの互換性

言語
互換性
C
C コンパイラのバイナリインタフェースは、この数年間、変更されていません。そのため、上記のバージョンでコンパイルされたオブジェクトファイル (.o) は、その他のバージョンでコンパイルされたオブジェクトファイルとリンクします。
C++
C++ のバイナリインタフェースは、5.0 リリースで大幅に改定され、ISO/ANSI C++ 規格の多くをサポートするようになりました。5.0 以前においては、Sun の C++ コンパイラ 4.x シリーズで、開発者は、C++ バイナリインタフェースに大きな影響を与えることなく、多くの改良を行うことができました。その結果、開発者は、ほとんどの場合において、異なる 4.x C++ コンパイラで作成した .o ファイルを結合できるようになりました。

バージョン番号が示すとおり、5.0 リリースは 4.x で 生成された .o ファイルと互換性がありませんでした。また、ANSI 機能を実装するには、5.0 の改定が必要でした。その後、移行を支援するものとして、4.2 コンパイラ以降のすべてのコンパイラに「互換性」フラグ (-compat=4) が導入され、新しい ANSI 機能が利用できなくなる代わりに、4.2 で生成された .o ファイルとリンクできる .o ファイルの生成が可能になりました。

Sun WorkShop 5.0 以降、C++ "compat=5" フラグ (デフォルト) で生成された .o ファイルは、Forte Developer 6, update 1 または update 2 の C++ コンパイラでコンパイルされた .o ファイルとリンクできるようになりました。
Fortran 90/95
コードジェネレータと入出力ライブラリが変更されたため、Sun WorkShop 3.0 (f90 v1.2) と Sun WorkShop 5.0 (f90 v2.0) 間のバイナリインタフェースは変更されています。モジュールメカニズムもまた、この移行で .M ファイル (モジュールごとに 1 つ) から .mod ファイル (ソースファイルごとに 1 つ) に変更されました。Sun WorkShop 5.0 以降のバイナリ互換性には変更はありません。-aligncommon オプションを使用してコンパイルしたオブジェクトファイルでは、Forte Developer 6 update 2 と Sun Studio 8 を混在させないでください。共通ブロックが派生した型か値のどちらかを含む場合、明示的に型の値を指定する必要があります。
 
 
 

Solaris オペレーティングシステムの互換性

Solaris オペレーティングシステムの互換性に関する基本的な規則: 特定バージョンの Solaris オペレーティングシステムでコンパイルと構築を行う場合、そのバージョンまたは後続バージョンでコードを実行できます。ただし、旧バージョンの Solaris オペレーティングシステムでコードを実行することはできません。

したがって、サポートしようとする Solaris オペレーティングシステムの、一番初期のバージョンでアプリケーションを構築する必要があります。

追加規則: Solaris オペレーティングシステムのサポート済みインタフェースを使用する場合に限り、後続バージョンの Solaris オペレーティングシステムでコードを実行できます (特定バージョンの Solaris オペレーティングシステムにおいて、文書化されていない機能を利用する場合、その機能が後続バージョンで動作しない可能性があります)。appcert プログラムを使用すると、Solaris オペレーティングシステムのサポート済みインタフェースだけを使用していることを確認できます。

最下位のプラットフォームに対応するようにコードをコンパイルしてください。さらに、同一のオペレーティングシステムバージョンにおいても、使用するオプションが問題となります。たとえば、-xarch および -xtarget を使用すると、ユーザは特定のアーキテクチャおよびターゲットに束縛されることになります。appcert を使用すると、自分のアプリケーションが新しいオペレーティングシステムへの「アップグレード」による影響を受けないかどうかを確認できます。通常は、最も適切な最適化レベル -xO (n=2,3,4) を使用してください。デバイスドライバや、その他比較的不安定な変数を使用する場合には -xO2 を指定すべきです。それ以外のユーザは -xO3 以上を使用することもできます。-xarch は、最小の基本値で使用してください。UltraSPARC 用にコードを作成する場合、-xarch=v8plus を使用すると安全です。v8 アーキテクチャでは -xarch=v8 を使用してください。

 
 

Java テクノロジの互換性

Sun Studio 8 および 9 を使用するには、Java[tm] 2 Platform, Standard Edition (J2SE) v. 1.4.0_02 が必要です。

Sun Studio 10 を使用するには、Java 2 Platform, Standard Edition (J2SE) v. 1.4.2_06 が必要です。

J2SE は、Sun Studio 10 のインストーラを使ってインストールすることができます。

 
 

LibC のパッチ

どのオペレーティングシステムでも、必ず最新の SUNWlibC パッチを 入手してください。


Sun だからできる、Java システム最適化ソリューション
Web でシステムの悩みをお聞かせください。
詳細