www.delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2007/10/29/06:19:32

X-Recipient: archive-cygwin AT delorie DOT com
X-Spam-Check-By: sourceware.org
To: cygwin AT cygwin DOT com
From: Victor Paesa <wzrlpy AT arsystel DOT com>
Subject: Re: llrint implementation in Cygwin
Date: Mon, 29 Oct 2007 11:18:40 +0000 (UTC)
Lines: 41
Message-ID: <loom.20071029T111515-144@post.gmane.org>
References: <fd68u2$geo$1 AT sea DOT gmane DOT org> <46F6C151 DOT 3070301 AT computer DOT org>
Mime-Version: 1.0
User-Agent: Loom/3.14 (http://gmane.org/)
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

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/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019