Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Waldemar Brodkorb <wbx@openadk.org>
To: buildroot@busybox.net
Subject: [Buildroot] systemd: build failure against pam on arm
Date: Wed, 27 Dec 2017 04:05:48 +0100	[thread overview]
Message-ID: <20171227030548.GE27558@waldemar-brodkorb.de> (raw)
In-Reply-To: <87shbxq99x.fsf@paral.in>

Hi Christian,
Christian Stewart wrote,

> Hi Waldemar, All,
> 
> Christian Stewart <christian@paral.in> writes:
> > Hi Waldemar,
> >
> > Waldemar Brodkorb <wbx@openadk.org> writes:
> >>> There are no extra pam files in my Buildroot tree - before building I
> >>> ensure this with a "git clean -xfd" and I've searched the tree as well.
> >>
> >> But that is strange then.
> >> find . -name libpam_misc.so\*
> >> ./output/build/linux-pam-1.3.0/libpam_misc/.libs/libpam_misc.so.0
> >> ./output/build/linux-pam-1.3.0/libpam_misc/.libs/libpam_misc.so
> >> ./output/build/linux-pam-1.3.0/libpam_misc/.libs/libpam_misc.so.0.82.1
> >
> > ... please note that I am building out of tree. There are no
> > limpam_misc* inside the "buildroot tree" which includes the main source
> > tree. When the compilation fails, inside my "output tree":
> 
> I can confirm now that even in-tree builds result in the same thing:

..

I believe it is an issue how gcc is calling the linker.
In my case I see following:
libsystemd-shared.la -lpam -lpam_misc
-L/home/wbx/buildroot/output/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib
-lkmod

So the linker does not get -L before -lpam -lpam_misc pointing to
the sysroot. 

If you start gcc with verbose linker output you see:
./output/host/bin/arm-buildroot-linux-gnueabihf-gcc -Wl,-verbose

The included linker script has:
SEARCH_DIR("=/home/wbx/buildroot/output/host/arm-buildroot-linux-gnueabihf/lib");
SEARCH_DIR("=/usr/local/lib"); SEARCH_DIR("=/lib");
SEARCH_DIR("=/usr/lib");

In my case on Debian libpam.so is not in the search dirs, but in
ls /lib/x86_64-linux-gnu/libpam.so.0*
/lib/x86_64-linux-gnu/libpam.so.0
/lib/x86_64-linux-gnu/libpam.so.0.83.1
wbx at helium:~/buildroot$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 8.9 (jessie)
Release:        8.9
Codename:       jessie

In you case the linker finds libpam.so in /lib and try to use it.

To verify my analyzation you can add -L<sysrootpathofyourbr> into:
systemd/Makefile
PAM_LIBS =
-L/home/paralin/buildroot/pi3/host/arm-buildroot-linux-gnueabihf/sysroot/usr/lib
-lpam -lpam_misc

Like in KMOD_LIBS. Then just continue the build with make V=1 and
see if it succeeds.

As systemd is switching completely to meson buildsystem a
upstreamable patch is not possible.

best regards
 Waldemar

  reply	other threads:[~2017-12-27  3:05 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-01  2:29 [Buildroot] systemd: build failure against pam on arm Christian Stewart
2017-06-01 18:36 ` Christian Stewart
2017-06-01 22:03 ` Peter Korsgaard
2017-06-01 23:35   ` Christian Stewart
2017-06-03  2:48     ` Christian Stewart
2017-06-03 10:54       ` Waldemar Brodkorb
2017-12-19 23:26         ` Christian Stewart
2017-12-20  0:31           ` Christian Stewart
2017-12-23  7:25         ` Christian Stewart
2017-12-23 10:06           ` Waldemar Brodkorb
2017-12-23 20:36             ` Christian Stewart
2017-12-24 10:38               ` Waldemar Brodkorb
2017-12-24 12:09               ` Waldemar Brodkorb
2017-12-25  1:35                 ` Christian Stewart
2017-12-25 15:13                   ` Waldemar Brodkorb
2017-12-26 21:50                     ` Christian Stewart
2017-12-27  0:55                       ` Christian Stewart
2017-12-27  3:05                         ` Waldemar Brodkorb [this message]
2017-12-27  5:39                           ` Christian Stewart
2017-12-27  8:05                             ` Waldemar Brodkorb
     [not found]                               ` <87o9mkdlf1.fsf@paral.in>
2017-12-28 18:04                                 ` Waldemar Brodkorb
2017-12-29 19:54                                   ` Christian Stewart
2018-02-14  2:55                                     ` Christian Stewart
2018-02-14  4:57                                       ` Waldemar Brodkorb

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=20171227030548.GE27558@waldemar-brodkorb.de \
    --to=wbx@openadk.org \
    --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