frida / frida-node

Frida Node.js bindings
281 stars 65 forks source link

Please commit the binding.gyp to NPM package. #46

Closed Invincibl-e closed 2 years ago

Invincibl-e commented 4 years ago

When node 13, the prebuilt does not exist. So, node gyp will be called to compile. The binding.gyp and src is part of NPM package.

gebing commented 4 years ago

On node 13, run npm -g install frida will fail with message below which caused by missing binding.gyp and src:

prebuild-install WARN install No prebuilt binaries found (target=13.1.0 runtime=node arch=x64 libc= platform=darwin)
gyp: binding.gyp not found (cwd: /usr/local/lib/node_modules/frida) while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:351:16)
gyp ERR! stack     at ChildProcess.emit (events.js:210:5)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:272:12)
gyp ERR! System Darwin 19.0.0
gyp ERR! command "/usr/local/Cellar/node/13.1.0/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/frida
gyp ERR! node -v v13.1.0
gyp ERR! node-gyp -v v5.0.5
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! frida@12.7.22 install: `prebuild-install || node-gyp rebuild`
npm ERR! Exit status 1
duraki commented 3 years ago

@oleavr please, do something here. It's end of 2020 and it's still failing to build properly. See https://github.com/NorthwaveSecurity/fridax/issues/14

oleavr commented 3 years ago

@duraki The easiest solution is probably to wire up automation that downloads and extracts a frida-core devkit (from our releases page), and builds against that. Currently we require a Frida source checkout that's already built, and pointing an environment variable named FRIDA at its path. PRs welcome!

oleavr commented 3 years ago

(But for those of you running into this: we currently only provide prebuilds for 10, 12, and 14. So if you're on 13, upgrade to 14.)