All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnout Vandecappelle <arnout@mind.be>
To: buildroot@busybox.net
Subject: [Buildroot] Host xmllint dynamic link failure
Date: Wed, 26 Sep 2012 10:19:20 +0200	[thread overview]
Message-ID: <5062BA88.3000906@mind.be> (raw)
In-Reply-To: <20120926093025.0ba0c3d0@skate>

On 09/26/12 09:30, Thomas Petazzoni wrote:
> Dear Arnout Vandecappelle,
>
> On Wed, 26 Sep 2012 01:55:15 +0200, Arnout Vandecappelle wrote:
>>    During one of my test builds, I ran into a dynamic linker failure
>> when running xmllint:
>>
>> /usr/bin/xmllint: relocation error: /usr/bin/xmllint: symbol
>> xmlShell, version LIBXML2_2.4.30 not defined in file libxml2.so.2
>> with link time reference
>>
>>    The problem is that we compile with
>> LD_LIBRARY_PATH="$(HOST_DIR)/usr/lib:", so that our host-libxml2 is
>> used instead of the one in /usr/lib.  Or, the problem is
>> that /usr/bin/xmllint is used instead of
>> $(HOST_DIR)/usr/bin/xmllint.  The path is hardcoded in xmlto...
>>
>>    Possible solutions:
>>
>> - Build host-xmlto.  This will require updating all packages using
>> xmlto to add host-xmlto to the dependencies.
>
> I am not sure to understand. Aren't we already building xmllint for the
> host? I don't follow your explanation entirely here. Anyway, if there
> is something from the host that we're using and that isn't part of the
> mandatory Buildroot dependencies, then it should definitely be built as
> a dependency, yes.

  xmllint yes, but not xmlto.  And xmlto hard-codes the path to xmllint
(and to /usr/bin/locale and /usr/bin/xsltproc as well...).

  xmlto is used to generate the documentation in the new X11 packages
(not sure if it was the case before already).  Disabling documentation
also works :-).  If xmlto can't be found, the documentation won't be
built.  That's why you don't see a problem in the autobuilders.


>> - Remove LD_LIBRARY_PATH and rely on rpath to find the libraries.
>> This may require patching some of the host packages.  At first sight,
>> it doesn't look too bad, however.
>
> Normally yes, I think we should remove LD_LIBRARY_PATH. The idea is to
> build all binaries installed in $(HOST_DIR)/usr/bin with a rpath, and
> that is normally sufficient to let them find the libraries.

  OK.


  Regards,
  Arnout

-- 
Arnout Vandecappelle                               arnout at mind be
Senior Embedded Software Architect                 +32-16-286540
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:[~2012-09-26  8:19 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-25 23:55 [Buildroot] Host xmllint dynamic link failure Arnout Vandecappelle
2012-09-26  7:30 ` Thomas Petazzoni
2012-09-26  8:19   ` Arnout Vandecappelle [this message]
2012-09-26  8:22     ` Arnout Vandecappelle
2012-09-26  8:24       ` Thomas Petazzoni
2012-09-26  8:35         ` 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=5062BA88.3000906@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 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.