Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To: buildroot@busybox.net
Subject: [Buildroot] Confused by the <fenv> implementation, causing gsl build issues
Date: Sun, 14 Oct 2012 12:04:29 +0200	[thread overview]
Message-ID: <20121014120429.52067fdc@skate> (raw)

Hello,

uClibc provides a UCLIBC_HAS_FENV option that can be enabled on any
architecture. As soon as this option is enabled, the <fenv.h> header is
included, which make applications and libraries think that function
such as feenableexcept() or fesetround() are available. However, on
ARM, those function are in fact not implemented by uClibc.

This causes the following build failure when trying to build the gsl
library (version 1.15) against an ARM uClibc toolchain:

../ieee-utils/.libs/libgslieeeutils.a(fp.o): In function `gsl_ieee_set_mode':
fp.c:(.text+0xd4): undefined reference to `fesetround'
fp.c:(.text+0x148): undefined reference to `feenableexcept'
collect2: ld returned 1 exit status

Of course, in one sense, the configure.ac check of gsl to test the
existence of those functions might be considered incorrect (it only
verifies if they are declared, not if it is actually possible to link a
program using those functions), but on the other hand, it sounds
strange for uClibc to install <fenv.h>, exposing certain functions that
are in fact not available.

See the end of
http://autobuild.buildroot.org/results/f1784c53cb595a3573cb98d63868aee36b5d9bb6/build.log.bz2
if you want to see the entire build log of gsl.

Am I misunderstanding something?

Thanks,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

             reply	other threads:[~2012-10-14 10:04 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-10-14 10:04 Thomas Petazzoni [this message]
2012-10-14 22:10 ` [Buildroot] Confused by the <fenv> implementation, causing gsl build issues Bernhard Reutner-Fischer
2012-10-18 13:42   ` Thomas Petazzoni
2012-10-18 18:21     ` Bernhard Reutner-Fischer
2012-10-18 19:14       ` Thomas Petazzoni

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20121014120429.52067fdc@skate \
    --to=thomas.petazzoni@free-electrons.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox