Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
GCJとは何? わかりやすく解説 Weblio辞書
[go: Go Back, main page]

GCJとは? わかりやすく解説

GNU Compiler for Java

(GCJ から転送)

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/02/20 03:07 UTC 版)

GNU Compiler for Java
作者 GNUプロジェクト
最新版
6.5 / 2018年10月26日 (6年前) (2018-10-26)
対応OS Unix-like
種別 コンパイラ
ライセンス GPL
公式サイト http://gcc.gnu.org/java
テンプレートを表示

GNU Compiler for Java(グニュー・コンパイラ・フォー・ジャバ、GCJ、ジーシージェー)はJavaのためのフリーなコンパイラで、GCCの一部である。Javaソースコードをコンパイルし、Java仮想マシンJavaバイトコードまたは機械語を出力する。また、バイトコードを格納したJavaクラスファイルや、それらを格納したJAR全体をマシン語にコンパイルすることも出来る。GCJで使用されるほとんど全てのランタイムライブラリGNU Classpathプロジェクトに由来する。

AWTSwingの2つのグラフィカルAPIをGNU Classpathにサポートさせることに現在多くの労力が投入されている。AWTとSwingの両方のフルサポートは間近であり、AWT/Swingアプリケーションを実行するためにサン・マイクロシステムズから提供されたランタイムを使用する必要性は遠からずなくなる見通しである。

2015年より、新しい開発のアナウンスはなく、製品はメンテナンスモードとなった[1]。2016年9月30日、GCJはGCCのtrunkから削除された[2][3]。削除のアナウンスは、GCJを含まないGCC 7.1のリリースとともに行われた[4]。GCJはGCC 6の一部として残されている。

CNI (Compiled Native Interface)

CNI (Compiled Native Interface)は、ネイティブアプリケーションやC++で記述されたライブラリを、Javaコードとの間で相互に呼び出せるようにするためのGCJのためのソフトウェアフレームワークである。

これは多くのJava仮想マシンで標準とされているJNI (Java Native Interface)フレームワークに似ているが、CNIの作成者はJNIに対して幾つもの優位性を主張している。

我々はCNIをより良い手段だと考えて採用している。特に、Javaは標準的なコンパイル技術を使って実装されるもう一つのプログラミング言語に過ぎない、とする発想に基づいたJava実装において、より良いと考える。それゆえ、そしてGCCを用いた言語実装は出来るだけ互換であるべきなので、Javaの呼び出し規約は、他の言語、特にC++で使用される規約に対して、実用性を損なわない範囲で極力似ていなければならない。なぜなら我々は、JavaをC++のサブセットと考えることもできるためである。CNIは、単にC++とJavaは同じ呼び出し規約とオブジェクト配置を持ち、バイナリ互換である、という発想によるヘルパー関数と規約のセットである。(この説明は単純化されているが、十分に正確である)[5]

脚注

  1. ^ GCC Looks To Turn Off Java, Replace With Go Or ADA
  2. ^ Andrew Haley (September 30, 2016). “[gcc] Revision 240661”. 2017年12月9日閲覧。
  3. ^ Tromey, Tom (October 2, 2016). “The Deletion of gcj”. The Cliffs of Inanity. October 3, 2016閲覧。
  4. ^ GCC 7 Release Series: Changes, New Features, and Fixes”. May 9, 2017閲覧。
  5. ^ The GCJ FAQ 2.3 Why does GCJ use CNI?[1] より

関連項目

外部リンク


GCJ

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/02/10 14:19 UTC 版)

Javaコンパイラ」の記事における「GCJ」の解説

GNUコンパイラコレクション (GCC) の一部である。GCCは C、FortranPascal他、Java以外の言語も含む。 GCCバックエンド用いてネイティブコード生成できる2015年よりメンテナンスモードとなっている。

※この「GCJ」の解説は、「Javaコンパイラ」の解説の一部です。
「GCJ」を含む「Javaコンパイラ」の記事については、「Javaコンパイラ」の概要を参照ください。

ウィキペディア小見出し辞書の「GCJ」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「GCJ」の関連用語

GCJのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



GCJのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのGNU Compiler for Java (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのJavaコンパイラ (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS