This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: llrint implementation in Cygwin
- From: Victor Paesa <wzrlpy at arsystel dot com>
- To: cygwin at cygwin dot com
- Date: Mon, 29 Oct 2007 11:18:40 +0000 (UTC)
- Subject: Re: llrint implementation in Cygwin
- References: <fd68u2$geo$1@sea.gmane.org> <46F6C151.3070301@computer.org>
Hi,
Tim Prince <tprince <at> computer.org> writes:
>
> Diego Biurrun wrote:
> > Hi!
> >
> > I have noticed that Cygwin does not implement llrint. However, llrint
> > is part of C99 and not having it available makes some applications (for
> > example MPlayer and FFmpeg) fail to compile.
> >
> > Are there any plans to implement llrint (in the near future)?
> >
>
> Perhaps if you would submit a patch to newlib, something may happen.
> It's not difficult to back-port stand-alone from recent gcc if you don't
> want to wait for cygwin to include a gcc upgrade, about which there have
> been plenty of threads here. You could include it in a <mathinline.h>
> of your choice.
> http://gcc.gnu.org/ml/gcc-patches/2005-03/msg01970.html
> http://gcc.gnu.org/ml/gcc-patches/2005-03/msg01973.html
> shows that it has been available for 2.5 years.
I found another way: leverage the llrint() implementation in MinGW.
a) We need first to download the mingw-runtime Cygwin package.
b) Then we create a small library:
ar x /usr/lib/mingw/libmingwex.a llrint.o
ar cq /usr/local/lib/libllrint.a llrint.o
c) And finally, we use that library in FFmpeg configure line:
--extra-ldflags='-L /usr/local/lib' --extra-libs='-l llrint'
It might not be the most elegant solution, but it is strightforward, and
it works.
Regards,
Victor
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/