All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alex J Lennon <ajlennon@dynamicdevices.co.uk>
To: Ruud den Bekker <ruud.den.bekker@cordis.nl>
Cc: Yocto <yocto@yoctoproject.org>
Subject: Re: dynamic library problem
Date: Thu, 12 Jun 2014 10:17:56 +0100	[thread overview]
Message-ID: <53997044.70403@dynamicdevices.co.uk> (raw)
In-Reply-To: <21598C768CAB7B46B75C18783A59ACEE271CF5@cordissvr01.Cordis.local>

[-- Attachment #1: Type: text/plain, Size: 2091 bytes --]


On 12/06/2014 10:07, Ruud den Bekker wrote:
>
> Hi Alex,
>
>  
>
> Recently you posted a fix for a dynamic library loading problem
>
> for the RaspberryPi and a graphic library.
>
>  
>
> I'm now facing a dynamic library not found problem when using
>
> the BeagleBone board RFS in yocto. However, when I use the qemuarm
>
> RFS, everything is running fine.
>
>  
>
> How can I determine the LDFLAGS that are being used for both builds?
>
>  
>
>  
>

Hi Ruud,

(Possibly helpful to others so cc:'d to the list)

If you're referring to the gstreamer1.0-omx work then yes, that was a
little tricky to track down.

It wasn't a "usual" library loading problem though as it was related to
some strange things that the library authors were doing to implement the
equivalent of a static constructor when the library was loaded. There
wasn't an explicit dependency on the library as the raspivid executable
didn't use any exported functions from that library, and bitbake was
passing an option that meant "unneeded" library dependencies were
stripped out. Thus the library wasn't loaded and didn't do the things it
needed to do.

Getting back to the point, it depends on the problem you are seeing, but
assuming that you are getting an error because of a missing library I
guess the first thing to do (which perhaps you already did?) is to look
for the missing library and do,

cd /
find -name libfoo.so

To see if it is actually in the board image.

If it is there then the next step is either to make sure it is being
picked up with something like

export LD_LIBRARY_PATH=/path/to/libfoo
./run_my_exe

It is also useful to install strace for this type of problem and look at
what libraries are being found and loaded

strace run_my_exe

To actually see what bitbake is doing on the server-side I would do
something like

bitbake -f -c devshell my_recipe

cd ../temp
nano log.do_configure

or

cd ../temp
grep LD_FLAGS

I've also found it to be useful to look at the config.log in ${S}

Hope this helps,

Alex
 

[-- Attachment #2: Type: text/html, Size: 5082 bytes --]

           reply	other threads:[~2014-06-12  9:18 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <21598C768CAB7B46B75C18783A59ACEE271CF5@cordissvr01.Cordis.local>]

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=53997044.70403@dynamicdevices.co.uk \
    --to=ajlennon@dynamicdevices.co.uk \
    --cc=ruud.den.bekker@cordis.nl \
    --cc=yocto@yoctoproject.org \
    /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.