From 29c3d42b422ed1b538665341079e322a3b9488df Mon Sep 17 00:00:00 2001 From: VĂ­ctor Paesa Date: Tue, 30 Oct 2007 20:07:31 +0000 Subject: Leverage MinGW's llrint() in Cygwin compilations. Originally committed as revision 10878 to svn://svn.ffmpeg.org/ffmpeg/trunk --- doc/general.texi | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'doc') diff --git a/doc/general.texi b/doc/general.texi index 978c34ea51..5f94d4ca97 100644 --- a/doc/general.texi +++ b/doc/general.texi @@ -530,27 +530,36 @@ Then you can easily test FFmpeg with Wine @subsection Compilation under Cygwin -Cygwin works very much like Unix. +The main issue with Cygwin is that newlib, its C library, does not +contain llrint(). However, it is possible to leverage the +implementation in MinGW. Just install your Cygwin with all the "Base" packages, plus the following "Devel" ones: @example -binutils, gcc-core, make, subversion +binutils, gcc-core, make, subversion, mingw-runtime @end example Do not install binutils-20060709-1 (they are buggy on shared builds); use binutils-20050610-1 instead. +Then create a small library that just contains llrint(): + +@example +ar x /usr/lib/mingw/libmingwex.a llrint.o +ar cq /usr/local/lib/libllrint.a llrint.o +@end example + Then run @example -./configure --enable-static --disable-shared +./configure --enable-static --disable-shared --extra-ldflags='-L /usr/local/lib' --extra-libs='-l llrint' @end example to make a static build or @example -./configure --enable-shared --disable-static +./configure --enable-shared --disable-static --extra-ldflags='-L /usr/local/lib' --extra-libs='-l llrint' @end example to build shared libraries. -- cgit v1.2.3