V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NormanGhost
V2EX  ›  Electron

如何在没有 m1 情况下打包 mac ARM 平台 electron 包?

  •  
  •   NormanGhost · 2022-05-30 10:43:41 +08:00 · 1900 次点击
    这是一个创建于 936 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我的机器:macos x86

    打包工具:electron-builder

    我的情况:项目使用到了 ffmeg ,用 @ffmpeg-installer/ffmpeg 安装 ffmpeg 。打包一般都是用 GitHub Actions ,但是 GitHub Actions 的 macos 是 x86 架构,所以只能出 x86 安装包。虽然 M1 也可以转译运行,但是总感觉不太好。

    临时解决方案:在node_modules里面找到了@ffmpeg-installer/ffmpeg的源码,直接写死 arch 字段为 arm64 ,然后手动把 ffmpeg 二进制文件替换。再 electron-builder 里面配置 target 为 arm ,这样打包出来的是 arm 版本。但是,这样每次都需要这样 hook 的操作属实有点傻吧。

    疑问:1. 大家在遇到我这种情况,项目里面有原生包,没有 m1 有想打包 macos arm 包怎么做的? 2. 有没有 m1 虚拟机服务,可以做这种事?

    1 条回复    2022-05-30 14:04:59 +08:00
    Manweill
        1
    Manweill  
       2022-05-30 14:04:59 +08:00
    本地试过做过交叉编译得到 arm 版本,没试过 github actions 能不能做
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1105 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 18:53 · PVG 02:53 · LAX 10:53 · JFK 13:53
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.