summaryrefslogtreecommitdiff
path: root/doc/general.texi
diff options
context:
space:
mode:
authorVíctor Paesa <victorpaesa@googlemail.com>2007-10-30 20:07:31 +0000
committerVíctor Paesa <victorpaesa@googlemail.com>2007-10-30 20:07:31 +0000
commit29c3d42b422ed1b538665341079e322a3b9488df (patch)
tree619068bfc3bf4d6be3bb0babb5cd6e2d84e036bd /doc/general.texi
parente76e2bbc0937ff456e1f4ad5b98851fe6ccc8005 (diff)
Leverage MinGW's llrint() in Cygwin compilations.
Originally committed as revision 10878 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'doc/general.texi')
-rw-r--r--doc/general.texi17
1 files changed, 13 insertions, 4 deletions
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.