[FFmpeg-devel] Building for Mac x86 with GCC & NASM
Martin Storsjö
martin at martin.st
Wed May 28 11:39:42 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 10:29
>> To: FFmpeg development discussions and patches <ffmpeg-
>> devel at ffmpeg.org>
>> Subject: Re: [FFmpeg-devel] Building for Mac x86 with GCC & NASM
>>
>> On Wed, 28 May 2025, softworkz . wrote:
>>
>>>> -----Original Message-----
>>>> From: ffmpeg-devel <ffmpeg-devel-bounces at ffmpeg.org> On Behalf Of
>>>> Christopher Snowhill
>>>> Sent: Mittwoch, 28. Mai 2025 09:40
>>>> To: FFmpeg development discussions and patches <ffmpeg-
>>>> devel at ffmpeg.org>
>>>> Subject: Re: [FFmpeg-devel] Building for Mac x86 with GCC & NASM
>>>>
>>>> On Tue May 27, 2025 at 10:54 PM PDT, Martin Storsjö wrote:
>>>>> On Tue, 27 May 2025, softworkz . wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I have an issue with the CI builds for Mac in a way that it
>> prints
>>>>>> tons of lines like this:
>>>>>>
>>>>>> ld: warning: no platform load command found in
>>>> 'libavcodec/libavcodec.a[1008](sao_10bit.o)', assuming: macOS
>>>>>> ld: warning: no platform load command found in
>>>> 'libavcodec/libavcodec.a[1009](hpeldsp.o)', assuming: macOS
>>>>>> ld: warning: no platform load command found in
>>>> 'libavcodec/libavcodec.a[1011](huffyuvdsp.o)', assuming: macOS
>>>>>> ld: warning: no platform load command found in
>>>> 'libavcodec/libavcodec.a[1013](huffyuvencdsp.o)', assuming: macOS
>>>>>>
>>>>>>
>>>>>> These are all about X86AM output. I've had those lines for all .o
>>>> files
>>>>>> before and was able to get rid of them by adding flags like
>> below.
>>>>>>
>>>>>> Does anybody know how I can avoid those lines for the X86ASM
>> output
>>>> as well?
>>>>>> (don't know much about building for Apple)
>>>>>
>>>>> 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.
>>>>>
>>>>> These warnings would go away of nasm could produce the right
>>>> platform load
>>>>> commands; this is https://github.com/netwide-
>> assembler/nasm/pull/13,
>>>> but
>>>>> there hasn't been much progress on it. (And since the macOS
>>>> ecossytem
>>>>> mostly is moving away from x86, I guess there's progressively less
>>>> effort
>>>>> on it as well.)
>>>>>
>>>>> // Martin
>>>>
>>>> I do wonder how this is going, since I have never noticed such
>>>> messages
>>>> while building for x86 from an ARM machine. I continue to support
>> x86
>>>> machines all the way down to the minimum spec of current Xcode,
>> which
>>>> is
>>>> 10.13.
>>>
>>> I don't think you can cross-compile x86 assembler on an arm machine.
>>
>> Why wouldn't you be able to do that? The assembler is an executable
>> like
>> any other, taking in source code and outputting object files. You can
>> run
>> that on any machine.
>
> I haven't seen any arm binary in nasm's MacOS package.
> Is there a nasm package for arm? Then I'm wrong of course!
It's not very hard to compile it yourself. And macOS on arm can run x86_64
binaries just fine if you want to use a prebuilt binary. Plus other
package managers like homebrew probably provides arm versionis of it as
well.
// Martin
More information about the ffmpeg-devel
mailing list