ffi一些常见的错误

时间:2024-03-16 11:56:57

1.安装失败

现在ffi已经有两年多没人维护了,对于Node版本的快速迭代,ffi现在已经连安装都可能失败了。本人测试的时候使用:node: v10.x,node-gyp: v3.8;的时候总会报错的,后面降级为node: v8.13;  node-gyp: v3.7;安装的时候偶尔还是可以成功,建议着两个版本不要太新了,会造成ffi的一层底层报错;

如果你降级了还是安装失败的话,可以考虑下一下的方法:

$ git clone git://github.com/node-ffi/node-ffi.git

$ cd node-ffi

$ node-gyp rebuild

接着把node-ffi文件里面的所有文件(除了.git这种)复制出来,然后再我们的项目node_modules下新建一个ffi文件,把刚才复制的文件粘贴进去,在这里可能会出现有些包缺失,看缺失了什么在自己安装;(本人这边只有偶尔会出现缺失ref包)

npm install [packageName]

2.安装成功,项目跑不起来

ffi一些常见的错误

这是没有编译好,这边常见的有两种解决方法:

方法一:直接运行命令 ,即可自动编译当前依赖的原生模块

.\node_modules\.bin\electron-rebuild.cmd(在git命令行使用./node_modules/.bin/electron-rebuild.cmd)

方法二:分别进入node_modules目录下的ffi和ref文件种执行如下命令:

node-gyp rebuild --target=2.0.9 --arch=ia32 --dist-url=https://atom.io/download/electron

简单解释: target指明electron版本,arch表明想要重新编译成多少位的,ia32位x86平台,x64位64位平台,DLL位数,模块位数,Node.js位数应保持一致,否则会报错,dist-url指定了去哪里下载electron的头文件