Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Arnout Vandecappelle <arnout@mind.be>
To: buildroot@busybox.net
Subject: [Buildroot] [autobuild.buildroot.net] Build results for 2014-05-22
Date: Wed, 28 May 2014 08:10:42 +0200	[thread overview]
Message-ID: <53857DE2.6040509@mind.be> (raw)
In-Reply-To: <20140523190819.45a80027@free-electrons.com>

On 23/05/14 19:08, Thomas Petazzoni wrote:
> Dear Fabio Porcedda,
> 
> On Fri, 23 May 2014 11:32:28 +0200, Fabio Porcedda wrote:
> 
>>>    powerpc |                alsa-lib-1.0.26 | NOK | http://autobuild.buildroot.net/results/520606ec674f6c8efad6ebbb840099ec89d03130/
>>>     x86_64 |                audiofile-0.3.6 | NOK | http://autobuild.buildroot.net/results/cc21623fbc3d4e94f09b2cb0be36ce05cf75a2e6/
>>
>> It's related to BR2_PREFER_STATIC_LIB=y, I'm trying to fix it.
> 
> Please note that Gustavo has already done a lot of investigation on
> this one. It boils done to the fact that we pass --static instead of
> -static when building statically. But we switched from -static to
> --static a while ago, for some reason that the commit doesn't make
> really clear.

 I remember that: libtool will parse the -static option and act accordingly.
Only, it interprets it differently than gcc: it will only link statically
against local libraries, not against installed libraries. If we don't have any
.so files in $(STAGING_DIR), that wouldn't be a problem because it would still
link statically (no other option). But unfortunately there are still quite a few
packages that do install .so files in $(STAGING_DIR) - e.g. toolchain-external.
So without the --static, you end up with a lot of dynamically linked programs.

 For reference, the commit is 0a4bd19f4.

 As that commit mentions, we would actually like to pass -all-static to libtool.
But of course, that option is not known by gcc, so it won't work if libtool is
not used...

 A proper solution would be to adapt our libtool patches to interpret -static as
-all-static. Or alternatively, to patch the compiler wrapper to interpret
-all-static as -static (and then of course we'd have to generalize the compiler
wrapper to also use it for internal toolchains).

 If someone writes a patch, put me in Cc and I'll test it on a static
allpackageyesconfig.

 Regards,
 Arnout


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

  reply	other threads:[~2014-05-28  6:10 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-05-23  6:30 [Buildroot] [autobuild.buildroot.net] Build results for 2014-05-22 Thomas Petazzoni
2014-05-23  9:32 ` Fabio Porcedda
2014-05-23 17:08   ` Thomas Petazzoni
2014-05-28  6:10     ` Arnout Vandecappelle [this message]
2014-05-28  6:30       ` Yann E. MORIN
2014-05-28  6:43         ` Thomas Petazzoni
2014-05-28  6:47           ` Yann E. MORIN
2014-05-28  7:06             ` Thomas Petazzoni
2014-05-28  8:05               ` Peter Korsgaard

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=53857DE2.6040509@mind.be \
    --to=arnout@mind.be \
    --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