zoukankan      html  css  js  c++  java
  • Node.js c++ 扩展之HelloWorld

    测试环境

    vs:vs2017
    node.js:9.9.6

    相关地址

    官方文档对应地址:https://www.nodejs.org/api/addons.html
    官方案例对应地址:https://www.github.com/nodejs/node-addon-examples

    安装所需版本的Node.js

    下载并且安装Node.js,在官网下载安装包即可。如果不想用最新版本,可以在https://www.nodejs.org/dist/下载别的版本。

    安装Python2.7

    安装Python2.7后,打开CMD,运行npm config set python python2.7。

    安装gyp

    以管理员模式打开CMD,运行npm install -g node-gyp,即可安装。 关于gyp可以参考https://github.com/nodejs/node-gyp#installation,里面有相关的安装需求说明。

    编写代码以及配置文件

    这个请参考官方文档。我这里直接以官方案例的HelloWorld为例。

    打开CMD,切换目录至代码目录

    1_hello_world 下有好几个文件夹,我选择了node_0.12,也就是说要切换到这个文件夹下。其中binding.gyp文件为配置文件。hello.cc是我们写插件代码的地方。hello.js用于测试。

    运行node-gyp configure,如果配置文件没错的话,就会出现一个目录build,里面是VS的工程文件,你就可以使用VS进行编译了,当然也可以运行node-gyp build来编译

    修改JS文件以及测试

    将编译完的hello.node复制到代码所在目录(node_0.12)。

    编辑hello.js文件,将
    var addon = require('bindings')('hello');
    改成
    var addon = require('./hello.node');

    这里的测试代码是远古版本的代码,所以需要修改。

    之后开始测试,打开CMD,切换到hello.js所在目录,运行node hello.js,如果没有出问题,cmd就会输出world字符。

    注意

    NODE_MODULE(hello, init)中的hello是模块名,需要与文件名保持一致,不然编译没问题,运行时会出错。因为在require('./hello.node')时,既去找相应的文件,也匹配对应的MODULE。

  • 相关阅读:
    清除浮动float
    overflow属性
    轮播图的小圆圈鼠标移上去变样式
    大banner居中
    网站logo
    VS里面设置类似于#1或者#2之类的程序快捷输入
    优先级运算简单顺口溜
    对2的次幂求模
    VS2019离线安装
    unity ContentSizeFitter设置verticalFit立即生效
  • 原文地址:https://www.cnblogs.com/blueroses/p/9437986.html
Copyright © 2011-2022 走看看