Please note, this is a STATIC archive of website developer.mozilla.org from November 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

xpidl

xpidl は XPIDL インタフェース記述ファイルに基づいた XPCOM インタフェース情報を生成するためのツールです。

  • インタフェースの完全な C++ 実装のためのコメントアウトされたテンプレートを含む C++ ヘッダファイル (<tt>.h</tt>)
  • Java インタフェースファイル (<tt>.java</tt>)
  • XPConnect を通して動的に XPCOM オブジェクトを呼び出すランタイム種類の情報を含む XPConnect typelib ファイル(<tt>.xpt</tt>)
  • HTML 形式の文書 (<tt>.html</tt>)

xpidl のビルド

xpidl は Gnome プロジェクト由来の idl コンパイラである libIDL idl コンパイラ をベースにしています。libIDL コンパイラは、やはり Gnome プロジェクト由来の glib をベースにしています。XPCOM コンポーネントに使われるヘッダを生成するために xpidl コンパイラを使うことができるため、現在 xpidl コンパイラはビルドプロセスの一部になっています。libIDL と glib の情報をビルド文書で確認してください。

UNIX: もし、あなたが xpidl をビルドしたいだけなら、ビルドするのにはわずかなディレクトリだけが必要です。Mozilla のソースを取得して、'configure'を実行したのち、以下のようにして dist/bin ディレクトリに xpidl をビルドすることができるでしょう。

make -C config
make -C nsprpub
make -C xpcom/typelib

Windows: 静的リンクされた xpidl.exe のビルドか VC 2005 Express でビルドをしたいなら、Windows で静的 xpidl をビルドするを参照してください。

xpidl を使う

Mozilla をビルドする手順に XPIDL ファイルをどのように加えるかについての説明のために xpidl ビルドページ を参照してください。xpidl は UNIX と Windows のコマンドラインからも利用可能です。

Usage: ./xpidl -m mode [-w] [-v] [-t version number]
          [-I path] [-o basename | -e filename.ext] filename.idl
       -a emit annotations to typelib
       -w turn on warnings (recommended)
       -v verbose mode (NYI)
       -t create a typelib of a specific version number
       -I add entry to start of include path for ``#include "nsIThing.idl"
       -o use basename (e.g. ``/tmp/nsIThing) for output
       -e use explicit output filename
       -m specify output mode:
          header        Generate C++ header            (.h)
          typelib       Generate XPConnect typelib     (.xpt)
          doc           Generate HTML documentation    (.html)
          java          Generate Java interface        (.java)

リソース

苦情は docs [email protected] & [email protected] まで (英語で)

Original Document Information

ドキュメントのタグと貢献者

 このページの貢献者: teoli, Taken, Mgjbot
 最終更新者: teoli,