Problem with prebuild module
rahmonzoda opened this issue · comments
Hi guys, thanks for the excellent library, but i have an error that i can't fix.
I creaded prebuild module and publish that here https://github.com/rahmonzoda/node-desktop-idle/releases
The module is also installed normally, but I get this error when i try use that
os: osx 10.14
node: node v10.11.0
npm: 6.4.1
dyld: lazy symbol binding failed: Symbol not found: __ZN2v816FunctionTemplate3NewEPNS_7IsolateEPFvRKNS_20FunctionCallbackInfoINS_5ValueEEEENS_5LocalIS4_EENSA_INS_9SignatureEEEiNS_19ConstructorBehaviorENS_14SideEffectTypeE
Referenced from: /Users/ubayd/Work/chronos/simple-samples/activity-monitor/node_modules/desktop-idle/build/Release/desktopIdle.node
Expected in: flat namespace
dyld: Symbol not found: __ZN2v816FunctionTemplate3NewEPNS_7IsolateEPFvRKNS_20FunctionCallbackInfoINS_5ValueEEEENS_5LocalIS4_EENSA_INS_9SignatureEEEiNS_19ConstructorBehaviorENS_14SideEffectTypeE
Referenced from: /Users/ubayd/Work/chronos/simple-samples/activity-monitor/node_modules/desktop-idle/build/Release/desktopIdle.node
Expected in: flat namespace
My guess is you're linking with something that can't be found on the target system, i.e. where you are downloading it.
@rahmonzoda If you're using Electron then electron-rebuild
is required - see electron/electron#14167
I'm seeing something similar with the mac os binaries here: https://github.com/tree-sitter/node-tree-sitter/releases/tag/v0.13.19.
The binaries were compiled on a macOS worker on Travis-CI. But users who download them on macOS 10.14 Mojave are getting the same dynamic linking error when loading the module
dyld: lazy symbol binding failed: Symbol not found: __ZN2v816FunctionTemplate3NewEPNS_7IsolateEPFvRKNS_20FunctionCallbackInfoINS_5ValueEEEENS_5LocalIS4_EENSA_INS_9SignatureEEEiNS_19ConstructorBehaviorENS_14SideEffectTypeE
Referenced from: /the/project/node_modules/tree-sitter/build/Release/tree_sitter_runtime_binding.node
Expected in: flat namespace
Disregard the above comment; it was actually an electron / node incompatibility.
I suspect the issue you are seeing is caused by this bug.
@rahmonzoda As noted above, the problem might be an Electron incompatibility, which can be solved by using electron-rebuild
and/or (if caused by the ABI bug) by updating prebuild-install
.
If that is not the case (e.g. you're not using Electron), feel free to reopen with more information. Thanks!