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] Qt5 puzzle
Date: Wed, 6 Nov 2013 19:18:59 +0100	[thread overview]
Message-ID: <20131106191859.2c4d295c@skate> (raw)
In-Reply-To: <CALo-6+gmYsfcV1yU2oEAfkbCHCqi2YHSwp6CtvkTX8+bmfXYUw@mail.gmail.com>

Dear Charles Krinke,

On Wed, 6 Nov 2013 08:57:45 -0800, Charles Krinke wrote:

> Recently one of our app engineers moved to QtQuick 2.0 and all of a sudden
> with the buildroot built binaries from Qt-5.0.2, I am seeing this error
> when a qml-style program is run.
> 
> ERROR: Binary compiled with -mfloat-abi=hard but without
> -DUSE_EABI_HARDFLOAT
> 
> In searching this, I can see mention of this on the buildroot mailing list
> from June, but no hints or resolution. The archive of the mailing list is
> this page:
> 
> http://buildroot-busybox.2317881.n4.nabble.com/ERROR-Binary-compiled-with-mfloat-abi-hard-but-without-DUSE-EABI-HARDFLOAT-td49130.html
> 
> Although I am using the TI AM3517 and not Raspberry Pi, the error seems to
> be the same.
> 
> I am assuming this has something to do with make options. This morning, I
> tried adding "-DUSE-EABI_HARDFLAT" to the Makefile for libQt5V8 where the
> offending message is coming from, but the cheap shot doesnt work.
> 
> I am working with a buildroot from the end of July, so am not using the
> experimental Qt-5.1 stuff (yet) and am hoping not to move forward in a
> crisis if I can help it.
> 
> So, ... as usual, I am hoping for a clue or two to let me understand how to
> get QtQuick back to functionality with Qt-5.0.2.

Interesting. I had a look at this, in Qt 5.0.2, as packaged in
Buildroot 2013.08. Normally, the USE_EABI_HARDFLOAT flag should
automatically be set to 1 by Qt. From src/v8/v8.pri:

equals(V8_TARGET_ARCH, arm) {
DEFINES += V8_TARGET_ARCH_ARM
config_hardfloat {
    DEFINES += USE_EABI_HARDFLOAT=1
} else {
    DEFINES += USE_EABI_HARDFLOAT=0
}
...

config_hardfloat is I believe decided from the test executed from the
main qtjsbackend.pro:

qtCompileTest(hardfloat)

and there is indeed a config.tests/hardfloat/, which builds a program,
and then looks up with readelf if it's built hard float or not. Most
likely this test is failing, for some reason, and therefore believes
that the toolchain is not hardfp, while it actually is. I had a quick
read of the test and it seems to be testing something correct.

Can you post your .config so we can see what your toolchain is and what
is your Buildroot configuration?

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

  parent reply	other threads:[~2013-11-06 18:18 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-06 16:57 [Buildroot] Qt5 puzzle Charles Krinke
2013-11-06 17:28 ` Thomas De Schampheleire
2013-11-06 19:08   ` Charles Krinke
2013-11-06 19:52     ` Thomas Petazzoni
2013-11-06 18:18 ` Thomas Petazzoni [this message]
2013-11-06 20:55   ` Charles Krinke
2013-11-06 22:06     ` Thomas Petazzoni
2013-11-06 22:27       ` Charles Krinke
2013-11-06 22:53         ` 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=20131106191859.2c4d295c@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