All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexey Brodkin <Alexey.Brodkin@synopsys.com>
To: buildroot@busybox.net
Subject: [Buildroot] Analysis of build results for 2015-11-18
Date: Tue, 24 Nov 2015 12:10:35 +0000	[thread overview]
Message-ID: <1448367035.6278.18.camel@synopsys.com> (raw)
In-Reply-To: <1448053288.2964.12.camel@synopsys.com>

Hi Thomas,

On Sat, 2015-11-21 at 00:01 +0300, Alexey Brodkin wrote:
> Hi Thomas,
> 
> On Fri, 2015-11-20 at 00:15 +0100, Thomas Petazzoni wrote:
> > Hello,
> > 
> > J?r?me, Johan, Bernd, Yann, Martin, Gustavo, R?mi, Samuel, Alexey,
> > Waldemar, Clayton, please read below, there are some interesting issues
> > for you :-) Thanks !

[snip]

> > > arc |              util-linux-2.27.1 | NOK | 
> > > http://autobuild.buildroot.net/results/75960db671807091fe9155aee9e46a6245e32590/
> > 
> > checking for prlimit... no
> > configure: error: flock selected, but required timer_create function not available
> > 
> > Not sure. Alexey ?
> 
> Well I was trying to reproduce that locally but to no avail.
> Indeed I tried to strip everything but "util-linux" from defconfig to save time so
> might be that's the reason of my failed attempt.
> 
> Still google tells me there's a similar issue with MIPSEL, see
> http://autobuild.buildroot.org/results/112/112e8b85783f5aaba42a937a6eb064317615a21b/build-end.log
> 
> So I would assume that's not just ARC. Still I'm going to start building full defconfig
> from failed build and we'll see if I'll be able to trigger that same issue.

Ok I got it reproduced and it looks like another static build problem.
What happens util-linux on configuration step tries to build and example that
uses timer_create() function. That function exists in librt and configuration
utility correctly adds this lib (-lrt).

But timer_create() uses pthreads internally and so for successful linkage "-lpthread"
is required as well (in addition to "-lrt").

I think log below is quite self-explaining:
------------------->8-----------------
configure:18434: checking for timer_create in -lrt
configure:18459: /home/autobuild/instance-1/output/host/usr/bin/arc-buildroot-linux-uclibc-gcc -std=gnu99 -o conftest 
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -matomic -Os  -static -D_LARGEFILE_SOURCE 
-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64  -static conftest.c -lrt   >&5
/home/autobuild/instance-1/output/host/usr/arc-buildroot-linux-uclibc/sysroot/usr/lib/librt.a(timer_create.os): In
function `timer_create':
timer_create.c:(.text+0x96): undefined reference to `pthread_once'
timer_create.c:(.text+0xc8): undefined reference to `pthread_attr_init'
timer_create.c:(.text+0xec): undefined reference to `pthread_attr_setdetachstate'
timer_create.c:(.text+0x130): undefined reference to `pthread_mutex_lock'
timer_create.c:(.text+0x14a): undefined reference to `pthread_mutex_unlock'
/home/autobuild/instance-1/output/host/usr/arc-buildroot-linux-uclibc/sysroot/usr/lib/librt.a(timer_routines.os): In
function `timer_helper_thread':
timer_routines.c:(.text+0x84): undefined reference to `pthread_mutex_lock'
timer_routines.c:(.text+0xb8): undefined reference to `pthread_create'
timer_routines.c:(.text+0xc6): undefined reference to `pthread_mutex_unlock'
timer_routines.c:(.text+0xd2): undefined reference to `pthread_exit'
/home/autobuild/instance-1/output/host/usr/arc-buildroot-linux-uclibc/sysroot/usr/lib/librt.a(timer_routines.os): In
function `__start_helper_thread':
timer_routines.c:(.text+0x120): undefined reference to `pthread_attr_init'
timer_routines.c:(.text+0x12c): undefined reference to `pthread_attr_setstacksize'
timer_routines.c:(.text+0x166): undefined reference to `pthread_create'
timer_routines.c:(.text+0x18c): undefined reference to `pthread_attr_destroy'
timer_routines.c:(.text+0x19c): undefined reference to `pthread_atfork'
collect2: error: ld returned 1 exit status
------------------->8-----------------

I've got a fix already but first I'd like to upstream my change and apply it
as a true back-port once fix is in upstream.

If we don't have enough time I may post my fix for Buildroot
(these are just 2 additional patches for util-linux) right away.

-Alexey

  reply	other threads:[~2015-11-24 12:10 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-19  7:30 [Buildroot] [autobuild.buildroot.net] Build results for 2015-11-18 Thomas Petazzoni
2015-11-19 23:15 ` [Buildroot] Analysis of build " Thomas Petazzoni
2015-11-20  0:17   ` Ryan Barnett
2015-11-20 15:29   ` Gustavo Zacarias
2015-11-20 15:45     ` Thomas Petazzoni
2015-11-22  7:53     ` Waldemar Brodkorb
2015-11-20 21:01   ` Alexey Brodkin
2015-11-24 12:10     ` Alexey Brodkin [this message]
2015-11-20 22:26   ` Arnout Vandecappelle
2015-11-21  8:23     ` Thomas Petazzoni
2015-11-21 21:14       ` Arnout Vandecappelle
2015-11-21 14:45   ` Martin Bark
2015-11-21 22:17     ` Arnout Vandecappelle
2015-11-22 18:31       ` Martin Bark
2015-11-23  6:22   ` Rodrigo Rebello

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=1448367035.6278.18.camel@synopsys.com \
    --to=alexey.brodkin@synopsys.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.