prebuild / prebuild

A command line tool for easily doing prebuilds for multiple version of node on a specific platform

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Problem with prebuild module

rahmonzoda opened this issue · comments

commented

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!