You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu20.04下Electron启动报错:Uncaught Error in native callback求助

解决Ubuntu20.04下Electron + ffi-napi启动时的"Error in native callback"问题

这个报错的核心原因是ffi-napi作为原生Node模块,编译时使用的ABI版本与Electron自带的Node环境不匹配,导致加载时触发dlopen错误。以下是针对性的解决步骤:

  • 安装electron-rebuild工具,用于重新编译原生模块适配Electron的ABI:

    npm install --save-dev electron-rebuild
    
  • 执行重新编译命令,自动匹配Electron版本编译ffi-napi及其依赖:

    npx electron-rebuild
    

    若使用yarn包管理器,替换为yarn electron-rebuild

  • 清理编译缓存与重新安装依赖,避免残留的不兼容编译产物:

    rm -rf node_modules/.cache build/
    npm install
    
  • 补充系统编译依赖,确保Ubuntu环境具备原生模块编译能力:

    sudo apt-get update
    sudo apt-get install build-essential cmake python3
    
  • (可选)检查Electron与ffi-napi的版本兼容性:
    确认你的Electron版本是否在ffi-napi支持的范围内,Node.js 16对应的Electron兼容版本大致为18.x-22.x,若版本不匹配可调整Electron版本到兼容区间。

  • (可选)处理asar打包后的加载问题:
    若后续打包应用时仍出现类似错误,需在package.json中配置asar解压原生模块:

    {
      "build": {
        "asarUnpack": [
          "node_modules/ffi-napi/**",
          "node_modules/ref-napi/**"
        ]
      }
    }
    

完成以上步骤后,重新执行npm start即可正常启动应用。

内容的提问来源于stack exchange,提问作者Raul

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 04:50:03