应该如何绑定.用OpenNI编写一个Node.js插件
How should binding.gyp be written to build a Node.js addon with OpenNI?
我正在尝试构建一个使用OpenNI的Node.js插件。我以前没有使用过Node-gyp,所以我正在尝试设置绑定。它包含OpenNI库作为构建的一部分。我实际编译的代码只是Hello World示例。
绑定。我使用的gyp文件是基于NUIMotion在Github上的一个,它正在做类似的事情。我:
{
"targets": [
{
"target_name": "onijs",
"sources": [
"src/main.cpp" ],
"include_dirs": [ "./src/Include" ],
"libraries": [ "-lOpenNI2", "-Wl,-rpath ./" ]
}
]
}
这是我所做的(在OSX中工作):
- 创建一个名为
onijs/
的节点项目文件夹 - 下载并解压OpenNI
- 将
Redist
目录的内容复制到onijs/
(Redist
有一个目录OpenNI2
,所以现在我有onijs/OpenNI2
,其中有一些驱动程序)。复制Includes
文件夹到onijs/src/
- 将基本的"Hello World"复制到
onijs/src/main.cpp
- 将
binding.gyp
文件放到onijs/
- 在终端中,我执行
cd /pathTo/onijs/
并运行node-gyp configure
,工作良好 - 然后我运行
node-gyp build
,它呕吐了。
错误是"ld: library not found for -lOpenNI2."
我在这里用错方法了吗?我在库声明中没有-l
和-Wl, -rpath ./
,但它仍然没有构建。
几个快速选项
如果OpenNI2是一个单一的动态库,你可以直接添加到你的库列表
/path/to/libOpenNI2_file
如果OpenNI2是包的一部分,您可以使用pkg-config来获取带有
的库。pkg-config --libs OpenNI2
OpenNI中有关于这个特定库的更多文档
相关文章:
- 我想通过带有C++和Python的插件创建一个可扩展的应用程序
- 插件:TypeError:addons.function() 不是一个函数
- 我可以用C++/WinRT编写一个DLL,供windows桌面应用程序(而不是UWP)或Unity插件使用吗
- 将窗口句柄从一个进程使用到另一个进程(插件 vst 音频)
- 错误访问另一个插件中的类(错误:未定义的引用)
- 将指针插件更改为另一个对象
- 在C 中创建一个记事本 插件
- 一个 Excel XLL 插件可以有多少内存?
- 在另一个线程中调试插件
- 使用混合的 C/C++ 源文件构建一个 NodeJS 插件
- GStreatermm:通过从Gst::element派生创建一个新的元素类型(在插件中)
- 如何创建一个继承自QWidget的qt插件
- 构建一个插件来扩展Qt应用程序
- 我可以使用NPAPI在一个DLL中创建多个插件吗
- MacOS X-编译一个插件
- 创建一个QML插件来运行系统命令
- 试图使一个.dll插件,但通过程序调试给出了错误
- 我如何使用std::string在一个c++插件的Node.js
- 应该如何绑定.用OpenNI编写一个Node.js插件
- 我如何创建一个自定义(小部件)插件qt设计器与cmake(和visual studio)