[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