-
-
Notifications
You must be signed in to change notification settings - Fork 75
如何为 frida node 选择正确的 Node.js 版本
codecolorist edited this page Nov 23, 2021
·
1 revision
有很多用户在安装 npm 包的时候会遇到类似如下的错误:
install:
prebuild-install || node-gyp rebuild
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
这是因为 npm 无法找到适合当前 Node.js 版本的预编译包。本项目并没有依赖太多的二进制包,所以问题大概率与 frida-node 安装失败有关。当 npm 找不到预先编译好的二进制包,就会尝试下载源码在当前系统编译。因为缺少相关 frida 头文件,自然就失败了。
那么如何才能确定一个合适的版本?
如下是 frida 和 Node.js 的历史版本下载页:
- 首先在 frida 的 release 页面找到一个对应您系统的版本,例如
frida-v14.0.8-node-v83-linux-x64.tar.gz
- 注意其中的
node-v83
,数字就是对应的NODE_MODULE_VERSION
。接下来在 Node.js 的 release 页面中找到匹配这个 API 版本的 Node。例如Node.js 14.15.1
便对应v83
. - 如果通过 brew 安装,默认会安装最高版本。有时候 frida 官方发布的安装包没有及时支持最新的解释器。可以尝试
brew install node@16
尝试安装旧版本的分支。