All of lore.kernel.org
 help / color / mirror / Atom feed
From: Allan Nielsen <a@awn.dk>
To: buildroot@busybox.net
Subject: [Buildroot] Problems with libsigc staging installation
Date: Thu, 12 Apr 2012 10:01:05 +0200	[thread overview]
Message-ID: <CANdC7UGan8_4krv_n8NWTbbWQBZgpff8odCAx_9ShPtzdGaExA@mail.gmail.com> (raw)

Hi

I'm having some problems with using the static libraries libsigc
installs in the staging directory.

The problem only exists when using my Ubuntu computer, everything
works fine when running Gentoo.

Here is my trace of the problem:

- When compiling a package using libsigc (the actual package is not
part of buildroot) the compiler complains that it can not find
libstdc++.la

- This is because libsigc-2.0.la contains an absolute path to the
libstdc++.la file which is incorrect. See snippet:

SNIPPET FROM ./output/host/usr/x86_64-unknown-linux-gnu/sysroot/usr/lib/libsigc-2.0.la
START
dependency_libs='
/home/cup/buildroot/buildroot-awn/output/host/usr/x86_64-unknown-linux-gnu/sysroot/usr/local/x86_64-gmb-linux-gnu/lib/gcc/x86_64-gmb-linux-gnu/4.4.6/../../../../x86_64-gmb-linux-gnu/lib/../lib64/libstdc++.la'
SNIPPET FROM ./output/host/usr/x86_64-unknown-linux-gnu/sysroot/usr/lib/libsigc-2.0.la
END

The same snippet from libsigc-2.0.la~

SNIPPET FROM ./output/host/usr/x86_64-unknown-linux-gnu/sysroot/usr/lib/libsigc-2.0.la~
START
dependency_libs='
/usr/local/x86_64-gmb-linux-gnu/lib/gcc/x86_64-gmb-linux-gnu/4.4.6/../../../../x86_64-gmb-linux-gnu/lib/../lib64/libstdc++.la'
SNIPPET FROM ./output/host/usr/x86_64-unknown-linux-gnu/sysroot/usr/lib/libsigc-2.0.la~
END

The libsigc-2.0.la and libsigc-2.0.la~ are different because they has
been processed by this command (in package/Makefile.autotools.in) :

        for i in $$$$(find $(STAGING_DIR)/usr/lib* -name "*.la"); do \
                cp -f $$$$i $$$$i~; \
                $$(SED) "s:\(['= ]\)/usr:\\1$(STAGING_DIR)/usr:g" $$$$i; \
        done

This explains the incorrect path in sysroot/usr/lib/libsigc-2.0.la,
but it seems like the path in wrong in the first place...

All the remaining *.la and *.la~ files installed in sysroot/usr/lib/
have absolute pathes pointing to
/home/cup/buildroot/buildroot-awn/output/host/usr/x86_64-unknown-linux-gnu/sysroot/
and not /usr/local/x86_64-gmb-linux-gnu/lib/gcc/x86_64-gmb-linux-gnu

So, why is that?

Any hints on how to debug this?

Best regards
Allan W. Nielsen

                 reply	other threads:[~2012-04-12  8:01 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=CANdC7UGan8_4krv_n8NWTbbWQBZgpff8odCAx_9ShPtzdGaExA@mail.gmail.com \
    --to=a@awn.dk \
    --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.