The real answer is probably "no", but still, just to double check. Has anyone ever been able to build ffmpeg x64 on Windows (VS2013 or VS2015)? I know it is not possible with publicly available sources without heavy modifications. However, if somebody did it and if he is willing to share a few tips...
Edit: It is interesting how most of the required x64 tools for running the "configure" are distributed without dependencies and it is impossible to get them anywhere. Looks like a professional trolling.
Edit2: There are thousands of errors like this:
fatal error C1083: Cannot open include file: 'features.h': No such file or directory
features.h is missing as many other header files. Is there a fix for that, or switching to Linux is the only option?
I used to compile ffmpeg on a linux machine with MinGW, but now I'm able to compile on a windows machine, in my case Windows 10.
NOTE: For me it only worked for ffmpeg versions >= 3.0 and I tested using VS 2013 and 2015
Few steps but very important:
Download and install (except YASM):
Steps:
I use this configuration:
NOTE2: If you used the last line --prefix=/c/ffmpeg3.3/DLLS, as a final step, run make install and the binaries will be copied to that path
Hope it helped.
Best of luck
There is a How-to on the FFmpeg Page itself.It didn't work for me so far, but at least you should get rid of the C99 Errors and so on.
https://trac.ffmpeg.org/wiki/CompilationGuide/MSVC
Maybe you try installing this stuff (I had to download pkg-config seperatly with Msys2 for it to work) and follow these steps.
Assuming with x64 you mean the standard 64-bit version, yes it is possible. See the fate page for all tested builds of FFmpeg, there's various 32- and 64-bit versions of Visual Studio in that list, including VS2013 and VS2015 64-bit. Search for "Microsoft (R) C/C++ Optimizing Compiler Version 18.00.40629 for x64" (or "19.00.24215.1") or "VS2013"/"VS2015", all the way at the bottom. For exact build options, see here for 2013 or here for 2015. The important part is to open a Windows shell with the 64-bit commandline build tools in your
$PATH
and open a msys shell from there, and then runconfigure
using the--arch=x86_64 --target-os=win64 --toolchain=msvc
options. For more detail, see the MSVC compilation wiki page.No, it cannot be done. MS compiler doesn't support #include_next. Plus, many other problems... You need MinGW.