[OE-core] About share eglibc work directories

Robert Yang liezhi.yang at windriver.com
Sat Jun 11 08:18:06 UTC 2011


On 06/11/2011 04:03 PM, Phil Blundell wrote:
> On Sat, 2011-06-11 at 15:55 +0800, Robert Yang wrote:
>> The source code of eglibc and eglibc-nativesdk are not compatible because of
>> the patch ld-search-order.patch, this makes it a little complex to share their
>> source directories, what can I think is that always apply
>> ld-search-order.patch, then in do_configure_prepend:
>
> I must admit I never quite understood why ld-search-order.patch is
> really required; it seems like rather a gruesome hack.  Why can't the
> SDK paths just be put in RPATH records for the nativesdk binaries?
>

Here is the comment in ld-search-order.patch, hope this can answer you question:

Upstream-Status: Inappropriate [embedded specific]

The default lib search path order is:

   1) LD_LIBRARY_PATH
   2) RPATH from the binary
   3) ld.so.cache
   4) default search paths embedded in the linker

For nativesdk binaries which are being used alongside binaries on a host system, we
need the search paths to firstly search the shipped nativesdk libs but then also
cover the host system. For example we want the host system's libGL and this may be
in a non-standard location like /usr/lib/mesa. The only place the location is know
about is in the ld.so.cache of the host system.

Since nativesdk has a simple structure and doesn't need to use a cache itself, we
repurpose the cache for use as a last resort in finding host system binaries. This
means we need to switch the order of 3 and 4 above to make this work effectively.

RP 14/10/2010

// Robert


> p.
>
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>




More information about the Openembedded-core mailing list