ffmpeg compile/configure/build windows

Here's how: http://ffmpeg.zeranoe.com/forum/mcp.php?i=main&mode=topic_view&f=19&t=459&sid=3b427270937ecfcd8f2e57a34a5213e2
BEST ONE: http://ffmpeg.zeranoe.com/forum/viewtopic.php?f=19&t=459
download script/run from http://ffmpeg.zeranoe.com/blog/
Then add mingw-w64-i686/bin to your path
Then checkout FFMpeg source, then cd into it and run:
./configure --enable-memalign-hack  --arch=x86   --target-os=mingw32    --cross-prefix=i686-w64-mingw32-  --pkg-config=pkg-config
The key here is the cross-prefix fella...that will change search for the file *gcc and see what your prefix should be.
make sure that bin ... location is in your path, too, I suppose (it should already be...)
more details:http://ffmpeg.zeranoe.com/forum/viewtopic.php?p=246#p246
Also you next should run "make" then look for an ffmpeg.exe output file.

11 thoughts on “ffmpeg compile/configure/build windows

  1. i686-mingw32-gcc is unable to create an executable file.
    C compiler test failed.

    If you think configure made a mistake, make sure you are using the latest
    version from Git. If the latest version fails, report the problem to the
    ffmpeg-user@ffmpeg.org mailing list or IRC #ffmpeg on irc.freenode.net.
    Include the log file “config.log” produced by configure as this will help
    solving the problem.

    was caused by not having the right –cross-prefix parameter, or by not having the w64…/bin directory in my path.

  2. using the –cross-prefix overcame this:

    ./configure –enable-memalign-hack –arch=x86 –target-os=mingw32
    ERROR: MinGW runtime version must be >= 3.15.

  3. somehow it overcame this too:

    /free_space/ffmpeg-cross/mingw-w64-i686/i686-w64-mingw32/bin/gcc yo.c
    /tmp/ccymzehp.s: Assembler messages:
    /tmp/ccymzehp.s:2: Error: unknown pseudo-op: `.def’
    /tmp/ccymzehp.s:2: Error: unknown pseudo-op: `.scl’
    /tmp/ccymzehp.s:2: Error: Missing symbol name in directive
    /tmp/ccymzehp.s:2: Error: unrecognized symbol type “32”
    /tmp/ccymzehp.s:2: Error: unknown pseudo-op: `.endef’
    /tmp/ccymzehp.s:5: Error: unknown pseudo-op: `.def’
    /tmp/ccymzehp.s:5: Error: unknown pseudo-op: `.scl’
    /tmp/ccymzehp.s:5: Error: Missing symbol name in directive
    /tmp/ccymzehp.s:5: Error: unrecognized symbol type “32”
    /tmp/ccymzehp.s:5: Error: unknown pseudo-op: `.endef’

  4. run-detectors: unable to find an interpreter for ./ffmpeg.exe

    meant “you cannot run one cross compiled for windows under linux” (maybe wine would work tho…)

  5. cross compile x264:

    x264-snapshot-20120724-2245 $ ./configure –host=i686-w64-mingw32 –enable-static –cross-prefix=/home/rogerdpack/dev/ffmpeg_cross/mingw-w64-i686/bin/i686-w64-mingw32- –prefix=$HOME/dev/ffmpeg_cross/mingw-w64-i686/i686-w64-mingw32 && make && make install

    optionally with –enable-win32thread to disable pthreads if you don’t want them (you don’t need them).

  6. “../../source/mingw-w64-svn/experimental/winpthreads/configure” –build=”$build_type” –host=”$mingw_w64_target” –disable-shared –enable-static –prefix=”$mingw_w64_prefix/$mingw_w64_arch-w64-mingw32″

    ./configure –build=i686-pc-linux-gnu –host=i686-w64-mingw32 –disable-shared –enable-static –prefix=/home/rogerdpack/dev/ffmpeg_cross/mingw-w64-i686/i686-w64-mingw32

  7. built on Sep 19 2008 21:32:31, gcc: 3.4.5 (mingw-vista special r3)
    [mov,mp4,m4a,3gp,3g2,mj2 @ 00037290]this file requires zlib support compiled in
    [mov,mp4,m4a,3gp,3g2,mj2 @ 00037290]error reading header: -1
    f:/installed/apache/htdocs/video/mov/1249.mov: Error while opening file

    possibly meant “you need to configure it with –enable-zlib” (?)

Leave a Reply

Your email address will not be published. Required fields are marked *


6 − five =

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>