xpidl 是一个基于 XPIDL 接口描述文件, 用于生成 XPCOM 接口信息的工具. 它会自动生成:
- C++ 头文件 (<tt>.h</tt>), 该头文件中包含了一个带注释的 C++ 接口的完整声明.
- Java 接口文件 (<tt>.java</tt>)
- XPConnect typelib 文件 (<tt>.xpt</tt>), 这个文件中定义了通过 XPConnect 动态调用 XPCOM 对象的运行时刻类型信息.
- HTML 格式的文档 (<tt>.html</tt>)
编译 xpidl
xpidl 的实现是基于 Gnome 工程中的 libIDL idl 编译器. libIDL 编译器依赖的 glib 库也来自于 gnome 工程. xpidl 编译器现在是 Mozilla 整个编译过程中必须包含的一分子, 我们用它来生成 XPCOM 组件的头文件. 如何得到 libIDL 和 glib 请看 Build Documentation.
Unix: 如果你仅仅想编译 xpidl 本身, 你只需要编译很少一部分目录. 在获取 mozilla 源码后, 执行 'configure', 然后以下面的命令就可以在 dist/bin 目录下编译出 xpidl:
make -C config make -C nsprpub make -C xpcom/typelib
使用 xpidl
xpidl build page 有关于如何添加一个 XPIDL 文件到 Mozilla 的编译过程的说明. 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)
资源
- 关于 xpidl 的Open bugs.
Flames to docs [email protected] & [email protected]
原始文档信息
- 作者: [email protected], [email protected]
- 上一次更新日期:版权信息 五月 29, 2002
- : 版权所有(C) [email protected], [email protected]