doc/platform: Add info about ICL

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
This commit is contained in:
Derek Buitenhuis 2013-06-23 19:49:28 -04:00
parent e21307a2b0
commit b0ce601c16
1 changed files with 19 additions and 9 deletions

View File

@ -101,10 +101,10 @@ you can build all libraries as DLLs.
@end itemize @end itemize
@section Microsoft Visual C++ @section Microsoft Visual C++ or Intel C++ Compiler for Windows
Libav can be built with MSVC using a C99-to-C89 conversion utility and Libav can be built with MSVC or ICL using a C99-to-C89 conversion utility and
wrapper. wrapper. For ICL, only the wrapper is used, since ICL supports C99.
You will need the following prerequisites: You will need the following prerequisites:
@ -117,28 +117,33 @@ You will need the following prerequisites:
you want to run @uref{fate.html, FATE}. you want to run @uref{fate.html, FATE}.
@end itemize @end itemize
To set up a proper MSVC environment in MSYS, you simply need to run To set up a proper environment in MSYS, you need to run @code{msys.bat} from
@code{msys.bat} from the Visual Studio command prompt. the Visual Studio or Intel Compiler command prompt.
Place @code{makedef}, @code{c99wrap.exe}, @code{c99conv.exe}, and @code{yasm.exe} Place @code{makedef}, @code{c99wrap.exe}, @code{c99conv.exe}, and @code{yasm.exe}
somewhere in your @code{PATH}. somewhere in your @code{PATH}.
Next, make sure @code{inttypes.h} and any other headers and libs you want to use Next, make sure @code{inttypes.h} and any other headers and libs you want to use
are located in a spot that MSVC can see. Do so by modifying the @code{LIB} and are located in a spot that the compiler can see. Do so by modifying the @code{LIB}
@code{INCLUDE} environment variables to include the @strong{Windows} paths to and @code{INCLUDE} environment variables to include the @strong{Windows} paths to
these directories. Alternatively, you can try and use the these directories. Alternatively, you can try and use the
@code{--extra-cflags}/@code{--extra-ldflags} configure options. @code{--extra-cflags}/@code{--extra-ldflags} configure options.
Finally, run: Finally, run:
@example @example
For MSVC:
./configure --toolchain=msvc ./configure --toolchain=msvc
For ICL:
./configure --toolchain=icl
make make
make install make install
@end example @end example
If you wish to compile shared libraries, add @code{--enable-shared} to your If you wish to compile shared libraries, add @code{--enable-shared} to your
configure options. Note that due to the way MSVC handles DLL imports and configure options. Note that due to the way MSVC and ICL handle DLL imports and
exports, you cannot compile static and shared libraries at the same time, and exports, you cannot compile static and shared libraries at the same time, and
enabling shared libraries will automatically disable the static ones. enabling shared libraries will automatically disable the static ones.
@ -168,7 +173,12 @@ erroneously included when building Libav.
can see. can see.
@end enumerate @end enumerate
@item Libav has been tested with Visual Studio 2010 and 2012, Pro and Express. @item Libav has been tested with the following on i686 and x86_64:
@itemize
@item Visual Studio 2010 Pro and Express
@item Visual Studio 2012 Pro and Express
@item Intel Composer XE 2013
@end itemize
Anything else is not officially supported. Anything else is not officially supported.
@end itemize @end itemize