mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
configure: error out on unsupported MSVC versions
The FATE tests for MSVC versions older than 2013 are untested in FATE and apparently are no longer supported. This commit makes the configure process error out in case an older version is used, and suggests to use a supported version of MSVC to compile. This also changes the documentation to reflect this. As discussed on IRC: 2018-05-12 19:45:16 jamrial then again, most of those were for old msvc, and i think we're not supporting versions older than 2013 (first one c99 compliant) anymore 2018-05-12 19:45:43 +JEEB yea, I think 2013 update 2 is needed 22:53 <@atomnuker> nevcairiel: which commit broke/unsupported support for msvc 2013? 23:23 <@atomnuker> okay, it was JEEB 23:25 <+JEEB> which was for 2012 and older 23:25 <+JEEB> and IIRC we no longer test those in FATE so that was my assumption 23:26 <+JEEB> 2013 is when MS got trolled enough to actually update their C part 23:26 <+JEEB> aand actually advertised FFmpeg support 23:26 <+JEEB> (although it was semi-failing until VS2013 update 1 or 2) Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
This commit is contained in:
parent
5dfeb7f081
commit
ce943dd6ac
3
configure
vendored
3
configure
vendored
@ -3988,8 +3988,7 @@ case "$toolchain" in
|
|||||||
cc_default="cl"
|
cc_default="cl"
|
||||||
cxx_default="cl"
|
cxx_default="cl"
|
||||||
else
|
else
|
||||||
cc_default="c99wrap cl"
|
die "Unsupported MSVC version (2013 or newer required)"
|
||||||
cxx_default="c99wrap cl"
|
|
||||||
fi
|
fi
|
||||||
ld_default="$source_path/compat/windows/mslink"
|
ld_default="$source_path/compat/windows/mslink"
|
||||||
nm_default="dumpbin -symbols"
|
nm_default="dumpbin -symbols"
|
||||||
|
@ -148,16 +148,11 @@ To target 32 bits replace @code{x86_64} with @code{i686} in the command above.
|
|||||||
|
|
||||||
@section Microsoft Visual C++ or Intel C++ Compiler for Windows
|
@section Microsoft Visual C++ or Intel C++ Compiler for Windows
|
||||||
|
|
||||||
FFmpeg can be built with MSVC 2012 or earlier using a C99-to-C89 conversion utility
|
FFmpeg can be built with MSVC 2013 or later.
|
||||||
and wrapper, or with MSVC 2013 and ICL natively.
|
|
||||||
|
|
||||||
You will need the following prerequisites:
|
You will need the following prerequisites:
|
||||||
|
|
||||||
@itemize
|
@itemize
|
||||||
@item @uref{https://github.com/libav/c99-to-c89/, C99-to-C89 Converter & Wrapper}
|
|
||||||
(if using MSVC 2012 or earlier)
|
|
||||||
@item @uref{http://code.google.com/p/msinttypes/, msinttypes}
|
|
||||||
(if using MSVC 2012 or earlier)
|
|
||||||
@item @uref{http://msys2.github.io/, MSYS2}
|
@item @uref{http://msys2.github.io/, MSYS2}
|
||||||
@item @uref{http://www.nasm.us/, NASM}
|
@item @uref{http://www.nasm.us/, NASM}
|
||||||
(Also available via MSYS2's package manager.)
|
(Also available via MSYS2's package manager.)
|
||||||
@ -166,16 +161,13 @@ You will need the following prerequisites:
|
|||||||
To set up a proper environment in MSYS2, you need to run @code{msys_shell.bat} from
|
To set up a proper environment in MSYS2, you need to run @code{msys_shell.bat} from
|
||||||
the Visual Studio or Intel Compiler command prompt.
|
the Visual Studio or Intel Compiler command prompt.
|
||||||
|
|
||||||
Place @code{yasm.exe} somewhere in your @code{PATH}. If using MSVC 2012 or
|
Place @code{yasm.exe} somewhere in your @code{PATH}.
|
||||||
earlier, place @code{c99wrap.exe} and @code{c99conv.exe} somewhere in your
|
|
||||||
@code{PATH} as well.
|
|
||||||
|
|
||||||
Next, make sure any other headers and libs you want to use, such as zlib, are
|
Next, make sure any other headers and libs you want to use, such as zlib, are
|
||||||
located in a spot that the compiler can see. Do so by modifying the @code{LIB}
|
located in a spot that the compiler can see. Do so by modifying the @code{LIB}
|
||||||
and @code{INCLUDE} environment variables to include the @strong{Windows-style}
|
and @code{INCLUDE} environment variables to include the @strong{Windows-style}
|
||||||
paths to these directories. Alternatively, you can try to use the
|
paths to these directories. Alternatively, you can try to use the
|
||||||
@code{--extra-cflags}/@code{--extra-ldflags} configure options. If using MSVC
|
@code{--extra-cflags}/@code{--extra-ldflags} configure options.
|
||||||
2012 or earlier, place @code{inttypes.h} somewhere the compiler can see too.
|
|
||||||
|
|
||||||
Finally, run:
|
Finally, run:
|
||||||
|
|
||||||
@ -217,8 +209,6 @@ can see.
|
|||||||
|
|
||||||
@item FFmpeg has been tested with the following on i686 and x86_64:
|
@item FFmpeg has been tested with the following on i686 and x86_64:
|
||||||
@itemize
|
@itemize
|
||||||
@item Visual Studio 2010 Pro and Express
|
|
||||||
@item Visual Studio 2012 Pro and Express
|
|
||||||
@item Visual Studio 2013 Pro and Express
|
@item Visual Studio 2013 Pro and Express
|
||||||
@item Intel Composer XE 2013
|
@item Intel Composer XE 2013
|
||||||
@item Intel Composer XE 2013 SP1
|
@item Intel Composer XE 2013 SP1
|
||||||
|
Loading…
Reference in New Issue
Block a user