[FFmpeg-devel] Building for Mac x86 with GCC & NASM
Martin Storsjö
martin at martin.st
Wed May 28 11:27:20 EEST 2025
On Wed, 28 May 2025, softworkz . wrote:
>> -----Original Message-----
>> From: ffmpeg-devel <ffmpeg-devel-bounces at ffmpeg.org> On Behalf Of
>> Martin Storsjö
>> Sent: Mittwoch, 28. Mai 2025 07:55
>> To: FFmpeg development discussions and patches <ffmpeg-
>> devel at ffmpeg.org>
>> Subject: Re: [FFmpeg-devel] Building for Mac x86 with GCC & NASM
>>
>> These warnings appeared since the new linker in Xcode 15.0, 1.5 years
>> ago.
>> I'm not aware of a flag for silencing these warnings; the only way I'm
>> aware of is to force using the old linker by passing -Wl,-ld_classic.
>
> Thanks for the tip. It works to the extent that it prevents those
> messages from appearing and make completes successfully. But almost
> all (4724) fate tests are failing, haven't tried to trace it down.
That sounds odd; it works fine for me (on an arm64 mac).
However this flag isn't a great solution either, since Xcode 16, the
linker warns "ld: warning: -ld_classic is deprecated and will be removed
in a future release".
> This led me to a reference indicating that YASM already does it right.
> I tried to build with YASM instead. After disabling HEVC and VVC decoders
> it ran almost to the end, but then it failed on tx_float:
>
> Warning: libavcodec/x86/vp9lpf.o
> skipping strip -x
> Warning: libavcodec/x86/vp9lpf.o
> libavutil/x86/tx_float.asm:1936: error:
> Warning: (PFA_15_FN:21) expression syntax
> Warning: error
> libavutil/x86/tx_float.asm:1937: error: (PFA_15_FN:21)
> Warning: expression syntax error
> make: *** [libavutil/x86/tx_float.o] Error
>
> I don't know whether it can be disabled in some way as it appears to be
> a prerequisite for many codecs and filters?
> Besides that, I suppose that YASM isn't a good idea at all, right?`
I'm not really familiar with the situation about x86 assemblers, but afaik
yasm is much further behind on many other aspects.
> From a different angle - what do you think would be the most useful
> Mac build for Patchwork CI in general?
> The available runners are macos 13, 14 and 15 - all x86, there's no
> arm yet.
> And would it be better to use Clang like in case of your FATE machines?
I would recommend you to use the Apple provided Clang rather than GCC.
// Martin
More information about the ffmpeg-devel
mailing list