[FFmpeg-devel] ffmpeg-N-58703-g7b2534b build break - libavutil/ffversion.h missing

David Favor david at davidfavor.com
Tue Dec 3 14:42:55 CET 2013


James Almer wrote:
> On 02/12/13 8:22 PM, David Favor wrote:
>> Michael Niedermayer wrote:
>>> On Mon, Dec 02, 2013 at 07:08:00AM -0600, David Favor wrote:
>>>> The recent change renaming libavutil/version.h to libavutil/ffversion.h has broken
>>>> the build.
>>>>
>>>> The usual temp fix of manually renaming this file also breaks the build.
>>> broken where and how exactly ?
>>>
>>> http://fate.ffmpeg.org/ is mostly green ...
>> Geez... attachment didn't go through... Here's the build residue...
>>
>> git describe --tags --match N
>> # installed: 2.1.1-58662-2013-11-30-gf2f17dd (/david-favor-tools/osx-10.9/bin/ffmpeg)
>> # source   : 2.1.1-58721-2013-12-03-g210a78a
>> # rebuild  : source updated
>> rm -f /smartbuild/work/ffmpeg.git/build.log
>> cd /smartbuild/work/ffmpeg.git
>> make distclean >/dev/null 2>&1 || /usr/bin/true
>> [ ! -e /opt/local/include/freetype2/freetype.h ] || ln -sf /opt/local/include/freetype2 
> 
> /opt/local/include/freetype2/freetype
>> ./configure --prefix=/david-favor-tools/osx-10.9 --enable-pic --enable-gpl --disable-debug 
> --extra-cflags='-I/david-favor-tools/osx-10.9/include -I/opt/local/include -I/usr/local/include 
> -I/usr/include' --extra-ldflags='-Wl,-rpath,/david-favor-tools/osx-10.9/lib 
> -Wl,-rpath,/opt/local/lib -Wl,-rpath,/usr/local/lib -Wl,-rpath,/usr/lib 
> -L/david-favor-tools/osx-10.9/lib -L/opt/local/lib -L/usr/local/lib -L/usr/lib' --enable-version3 
> --enable-shared --disable-static --enable-ffplay --enable-ffprobe --enable-ffserver 
> --enable-runtime-cpudetect --enable-nonfree --enable-zlib --enable-bzlib --enable-openssl 
> --enable-libmp3lame --enable-libfaac --enable-libfdk_aac --enable-libvpx --enable-libtheora 
> --enable-libvorbis --enable-libxvid --enable-libopus --enable-libopenjpeg --enable-libx264 
> --enable-postproc --enable-frei0r --enable-libopencore-amrnb --enable-libfreetype 
> --enable-libmodplug --enable-libass --enable-openssl  >> 
> /smartbuild/work/ffmpeg.git/build.log 2>&1
>> echo '#define FFMPEG_VERSION "2.1.1-58721-2013-12-03-g210a78a"' > version.h && touch .version
>> make -j8  >> /smartbuild/work/ffmpeg.git/build.log 2>&1
> 
> Is this the list of commands you or a script ran? Because if so, that echo line is the culprit.
> 
> You should let make create the version header and .version instead of doing it manually.
> But if you must, you need to change version.h with libavutil/ffversion.h because the former is 
> not used anymore, and also add some preprocessor guards if run make install.
> 
> Regards.

Ah... That's what it was... Thanks!

So any custom version generation looks to require this sequence...

1) make libavutil/ffversion.h

2) change #define FFMPEG_VERSION "N-58725-g0e15a34" in libavutil/ffversion.h

3) make

So allow make to generate ffversion.h + hack it + do a normal make, in which case
the ffversion.h timestamp will be newer than the .version timestamp, so the hacked
version will be retained.

Let me know if this is correct.

And thanks for the notice of how I was munging the build.


More information about the ffmpeg-devel mailing list