Addons 扩展

    • V8 JavaScript, C++ 库。能在C++中与JavaScript 链合:创建对象,调用函数等。文档大部份存放於v8.h 的
      标头文件(deps/v8/include/v8.h)。
    • libev, C 语言事件循环库。(提供一个能当文档描述符有特定事件发生,或等待时间超过时,执行回调函数
      的机制。) 当I/O 执行时, 需要使用libev 。Node 利用EV_DEFAULT 事件循环。文档存放於
    • libeio,C 语言执行绪集区库。能使POSIX 系统异步执行。由於通常已封装於src/file.cc ,所以毋必要
      使用。若需使用,查阅标头文件deps/libeio/eio.h。
    • 内部Node 库,最主要的是node::ObjectWrap 类,经常用作参考。
    • 其他,查阅deps/。

    Node 静态编译所有组件成可执行文件。当您编译您的模块时,您不必考虑以上库的连结。
    制作一个小型扩展能达到以下效用(C++ 除外):

    此源文件需要编译成hello.node(二进制扩展)。需要创建一个
    python 文件wscript:

    1. blddir = 'build'
    2. VERSION = '0.0.1'
    3. def set_options(opt):
    4. def configure(conf):
    5. conf.check_tool('node_addon')
    6. obj = bld.new_task_gen('cxx', 'shlib', 'node_addon')
    7. obj.target = 'hello'
    8. obj.source = 'hello.cc'