We are using ffmpeg-static in a build process which creates a universal Mac build, and it passes arch values for both Intel and M1: x64 and arm64. In the finished app build we noticed there was only ever one arch of the ffmpeg binary created. Digging deeper we found that if a binary already exists at ffmpeg-static/ffmpeg, it will not be rebuilt:
ffmpeg-static version
5.2.0
Node.js version
v18.20.3
operating system and/or environment
MacOS 11.3.1
@electron-forge
electron/universal
What happened?
We are using
ffmpeg-static
in a build process which creates a universal Mac build, and it passesarch
values for both Intel and M1: x64 and arm64. In the finished app build we noticed there was only ever one arch of the ffmpeg binary created. Digging deeper we found that if a binary already exists atffmpeg-static/ffmpeg
, it will not be rebuilt:displays correctly "Mach-O 64-bit executable x86_64" rebuilding for another arch:
still shows "Mach-O 64-bit executable x86_64" but removing the binary and rebuilding
shows correctly "Mach-O 64-bit executable arm64"