上次分享过Windows上的node.js扩展实现。今天分享下如何在Linux平台上,通过封装Dynamsoft Barcode SDK for Linux (dbr)来创建node.js barcode addon。
翻译:yushulx
软件下载
在Ubuntu上一般习惯用apt-get来安装软件。如果是这样操作,下载的node和npm版本都会比较旧。编译V8 C/C++代码的时候会出现错误‘FunctionCallbackInfo’ does not name a type:
安装Node
解压:
tar -xzf node-v5.3.0-linux-x64.tar.gz
打开.bashrc:
nano ~/.bashrc
导出node的路径并保存文件:
export PATH=$(YOUR_HOME)/Downloads/node-v5.3.0-linux-x64/bin:$PATH
安装node-gyp:
npm install -g node-gyp
安装DBR
解压:
tar -xzf v4.0.0-pre-alpha.tar.gz
为了方便编译的时候找到SDK中提供的*.so动态链接库,创建一个符号链接:
sudo ln -s $(DynamsoftBarcodeReader)/Redist/libDynamsoftBarcodeReaderx64.so /usr/lib/libDynamsoftBarcodeReaderx64.so
创建Node Barcode Addon
创建文件binding.gyp,在里面添加目标名,源码路径,include路径,以及依赖库的路径。
参考SDK中提供的sample,创建dbr.cc:
通过命令自动创建工程构建的文件:
node-gyp configure
创建之后makefile不需要再进行手动修改了。现在可以构建工程了:
node-gyp build
写一个测试dbr.js,包含读取license以及调用C/C++接口:
运行脚本:
node dbr.js
源码