[MacPorts] #48938: ffmpeg build failure on 10.6
MacPorts
noreply at macports.org
Mon Sep 21 00:10:35 PDT 2015
#48938: ffmpeg build failure on 10.6
--------------------------------+-------------------------
Reporter: chilli.namesake@… | Owner: devans@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.3.3
Resolution: | Keywords: snowleopard
Port: ffmpeg |
--------------------------------+-------------------------
Changes (by ryandesign@…):
* owner: macports-tickets@… => devans@…
* keywords: ffmpeg, buildfailure, 10.6, snowleopard => snowleopard
* cc: ryandesign@…, jeremyhu@… (added)
Comment:
Snow Leopard is still supported to the extent that if something isn't
working we will try to take a look at it if we can. But if the developers
have made changes that make a software package require a newer version of
OS X, then there's not much we can do about that. I don't know yet if
that's the case here though or not.
-----
The log shows that the first error is:
{{{
:info:build libavfilter/avf_showcqt.c:38:10: error: #include expects
"FILENAME" or <FILENAME>
}}}
This type of error is repeated a few times.
Lines 36-39 of libavfilter/avf_showcqt.c are:
{{{
#if CONFIG_LIBFREETYPE
#include <ft2build.h>
#include FT_FREETYPE_H
#endif
}}}
This means that `CONFIG_LIBFREETYPE` is defined (as it should be), but
that `FT_FREETYPE_H` (which should be defined in a file included by
ft2build.h) is not defined. I think this happens because the compiler was
invoked without specifying the directory where ft2build.h can be found
(the argument `-I/opt/local/include/freetype2` is missing) though I don't
understand why we didn't get a "file not found" error. It might be because
this is not a normal compiler invocation, but rather an invocation of the
preprocessor.
This is a bug in ffmpeg (or else a bug in the gcc compiler exposed by
ffmpeg's code, which ffmpeg should work around), reported with a proposed
fix [https://lists.ffmpeg.org/pipermail/ffmpeg-
devel/2015-September/178418.html here] (where it says that the clang
compiler is not affected). This might not be a relevant error, since the
build proceeds past it, but **we should probably apply this patch**.
-----
The next error in the log is:
{{{
:info:build ffplay.c:3217:46: error: missing binary operator before token
"("
}}}
Line 3217 of ffplay.c is:
{{{
#if defined(__APPLE__) && SDL_VERSION_ATLEAST(1, 2, 14)
}}}
This implies that `SDL_VERSION_ATLEAST` is not defined. It should have
been defined in SDL_version.h which is included by SDL.h which is included
by ffplay.c. The reason is the same as above: this is another preprocessor
invocation. The above fix should fix this as well.
-----
The next error, and possibly the real problem, begins hundreds of lines of
similar errors:
{{{
:info:build In file included from /usr/lib/gcc/i686-apple-
darwin10/4.2.1/include/xmmintrin.h:40,
:info:build from
/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MachineExceptions.h:29,
:info:build from
/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/DriverServices.h:32,
:info:build from
/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/CarbonCore.h:125,
:info:build from
/System/Library/Frameworks/CoreServices.framework/Frameworks/AE.framework/Headers/AE.h:20,
:info:build from
/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h:21,
:info:build from ffmpeg_videotoolbox.c:19:
:info:build /usr/lib/gcc/i686-apple-darwin10/4.2.1/include/mmintrin.h:67:
error: no previous prototype for ‘_mm_empty’
}}}
We've had a report of that type of error with ffmpeg years ago in #36961
but it was closed without a resolution, and since that was only seen by
two users and was with a now years-old version of ffmpeg that might not be
relevant anymore.
We also had a report of that error with mesa in #46827. In both tickets,
Jeremy suggested removing "`-Werror=missing-prototypes`" from the build
system. **We should try this**.
--
Ticket URL: <https://trac.macports.org/ticket/48938#comment:2>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list