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

SWIG

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/11/24 02:29 UTC 版)

SWIG
開発元 SWIG developers
最新版
4.1.1 / 2022年11月30日 (11か月前) (2022-11-30)[1]
リポジトリ
対応OS クロスプラットフォーム
ライセンス GPL
公式サイト www.swig.org/
テンプレートを表示

SWIG (Simplified Wrapper and Interface Generator) は、C/C++ で書かれたプログラムライブラリを、TclPerlPythonRubyPHPLuaなどのスクリプト言語や、JavaC#Common LispSchemeOCamlなどのプログラミング言語に接続するためのオープンソースのツールである。

仕組み

SWIGの目的は、プログラムとスクリプト言語間の接続を最小限の作業で達成することである。ヘッダファイルにわずかな数の特殊なコマンドを記述すると、SWIGはC/C++と対象の言語とを橋渡しするグルーコードを生成する。言語によって、グルーコードは以下の三つの形態となる。

  • もともとのプログラムと同様に振舞うが、スクリプト言語のインタプリタが埋め込まれた実行ファイル
  • 既存のインタプリタの何らかの拡張モジュールとしてリンクできるような共有ライブラリ
  • 対象の言語でコンパイルされ、他のプログラムにリンクできる形態の共有ライブラリ(例えば、Javaにおいて JNI を用いたもの)

用途

既存のC/C++プログラムにスクリプト言語のエンジンを埋め込むことは、大きく二つの用途がある。

  • C/C++ではなくスクリプト言語を用いることで、プログラムを手早くカスタマイズすることができる。ユーザーがスクリプトを書いてよくある仕事を自動化できるよう、スクリプトのエンジンはユーザーに公開しても良い。
  • 最終的な製品がスクリプト言語のエンジンを含まなくても、テスト用のスクリプトを書くことは非常に役に立つ。

既存のインタプリタからロードできる動的なライブラリを作成する理由はいくつもある。

  • スクリプト言語で等価なものがない C/C++ライブラリに対してアクセスできる方法を提供する。
  • まずスクリプト言語でプログラム全体を書き、性能解析後、パフォーマンスに決定的な部分のコードをCやC++で書く。

歴史

SWIGはCとC++で書かれ、1996年2月から広く公開されている。最初の作者で主要な開発者であったのは、ロスアラモス国立研究所ユタ大学の大学院生でシカゴ大学で教員として働きながらSWIGを開発したDave Beazleyであった。現在の開発は活発なボランティアのグループによってサポートされている。SWIG はGPL(2010年6月にリリースされたver2.0.00より前はBSD型のライセンス)でリリースされており、すなわち、使用、コピー、改変、再配布は商用でも非商用でもGPLに基づいてソースコードを配布する限りにおいて自由に行うことができる。

脚注

  1. ^ SWIG / News: SWIG-4.1.1 released”. 2023年9月26日閲覧。

関連項目

外部リンク





固有名詞の分類


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

「SWIG」に関係したコラム

  • 世界の株価指数一覧

    株価指数は、証券取引所に上場している銘柄を一定の基準で選出し、それらの銘柄の株価を一定の計算方法で算出したものです。例えば、日本の株価指数の日経平均株価(日経平均、日経225)は、東京証券取引所(東証...

辞書ショートカット

すべての辞書の索引

「SWIG」の関連用語

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

   

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



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

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

©2025 GRAS Group, Inc.RSS