繁体   English   中英

从 C++(Node.js 插件)调用 C 库时出现“符号查找错误”

[英]Getting "Symbol Lookup Error" when calling C library from C++ (Node.js Addon)

我正在开发一个 Node.js 插件,该插件需要用 C++ 包装来自C 库<\/a>的对象,以便可以从客户端 JavaScript(用 CoffeeScript 编写)访问它们。

C++ 模块可以编译,但是当我尝试通过 Node.js JavaScript 运行它时,无法调用 C 库并出现symbol lookup error<\/code> ,我在调试时遇到问题。

错误如下:
node: symbol lookup error: \/var\/lib\/cloud9\/ledscape-wrapper\/wrapper\/build\/Release\/wrapper.node: undefined symbol: ledscape_init<\/code>

wrapper.node<\/code>是编译后的包, ledscape_init<\/code>是我试图调用的库中的函数。

我试图跟踪代码并在多个文件中找到相关的片段。 我已经放弃了我认为无关紧要的线路。

# "AllFade.coffee"
@ledscape = require "./ledscape.js"
@frames[1] = @ledscape.LedscapeInit()
# "Ledscape.coffee"
wrapper = require "./build/Release/wrapper"
module.exports = wrapper

发生此问题的原因是,实际程序找不到动态库(.so 文件)我建议创建一个动态库并将其添加到当前查找路径中,以便 \/usr\/lib 在 linux

"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM