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

2022-05-30 10:43:41 +08:00
 NormanGhost

我的机器: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 虚拟机服务,可以做这种事?

1631 次点击
所在节点    Electron
1 条回复
Manweill
2022-05-30 14:04:59 +08:00
本地试过做过交叉编译得到 arm 版本,没试过 github actions 能不能做

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/856161

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX