[FFmpeg-devel] ffmpeg-2.1 + freetype-2.5.1 build break + fix info

David Favor david at davidfavor.com
Thu Nov 28 18:48:06 CET 2013


Clément Bœsch wrote:
> On Thu, Nov 28, 2013 at 10:37:26AM -0600, David Favor wrote:
>> Clément Bœsch wrote:
>>> On Thu, Nov 28, 2013 at 09:52:13AM -0600, David Favor wrote:
>>>> The break involves this line from configure...
>>>>
>>>>    enabled libfreetype && require_pkg_config freetype2 "ft2build.h freetype/freetype.h" FT_Init_FreeType
>>>>
>>>> What works is...
>>>>
>>>>    enabled libfreetype && require_pkg_config freetype2 "ft2build.h freetype/freetype.h" FT_Init_FreeType
>>>>
>>>> Looking at recent git activity on 'configure', no changes seem to have been made.
>>>>
>>>> Then I remembered, I updated freetype today... so I'm guessing freetype changed this file's location.
>>>>
>>>> Looking at Freetype, include files show up different places for different versions of Freetype...
>>>>
>>>>   OSX Mavericks + Freetype-2.5.1  -> /opt/local/include/freetype2
>>>>
>>>>   Ubuntu 13.10  + Freetype-2.4.12 -> /usr/include/freetype2/freetype
>>>>
>>>> So it appears Freetype has removed the 'freetype' subdirectory. Ugh...
>>>>
>>>> I'm unsure of the correct way to fix this.
>>>>
>>>> A temp fix is either hack configure to remove the 'freetype' subdirectory or...
>>>>
>>>>   cd /opt/local/include/freetype2 && mkdir freetype && cd freetype && ln -s ../freetype.h
>>>>
>>>> Please let me know the ticket opened for this problem + I'll open a MacPorts ticket
>>>> to reference the ffmpeg ticket, because likely this problem will crop up shortly in MacPorts.
>>>>
>>> Maybe something like:
>>>
>>> enabled libfreetype && (
>>>  require_pkg_config freetype2 "ft2build.h          freetype.h" FT_Init_FreeType ||
>>>  require_pkg_config freetype2 "ft2build.h freetype/freetype.h" FT_Init_FreeType)
>>>
>>> ?
>>>
>>> Are you sure it's not a packaging problem? It sounds like a weird move
>> >from freetype...
>>
>> Per http://www.freetype.org/freetype2/docs/tutorial/step1.html
>>
>>    NOTE: Starting with FreeType 2.1.6, the old header file inclusion scheme
>>    is no longer supported. This means that you now get an error if you do
>>    something like the following:
>>
>>      #include <freetype/freetype.h>
>>      #include <freetype/ftglyph.h>
>>
> 
> Ah right. In that case you only need to include ft2build.h (from
> /usr/include) and try to include FT_FREETYPE_H which is defined in it.
> Try replacing the freetype.h with that macro.

Yes. Whoever works on this bug, the fix is to use the specified API macros
for all include files, FT_FREETYPE_H + friends...

-- 
Love Living Well Doing What You Love?
http://DavidFavor.com/books can help!


More information about the ffmpeg-devel mailing list