DEEPAK BHATIA wrote:
> Hi,
> 
> I am looking at running the Dynamic Linker (ld.so.1) for PowerPC Platform. 
> But when I do 
> 
> #ldd ld.so.1
> 
> I get the the following output
>  liblddbg.so.4 =>         /lib/liblddbg.so.4
>         liblddbg.so.4 (SUNWprivate_4.52) =>      (version not found)
>         librtld.so.1 =>  /lib/librtld.so.1
>         libld.so.4 =>    /lib/libld.so.4
>         libc.so.1 =>     /lib/libc.so.1
>         libelf.so.1 =>   /lib/libelf.so.1
>         libm.so.2 =>     /lib/libm.so.2
> 
>>From where I can get libc.so.1 and libm.so.2 for the PowerPC Platform ?

Presumably you're building ld.so.1 from the opensolaris source, and
thus can build libc from the same:

  http://cvs.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libc/

libm however is outside of the opensolaris source, so I don't know how
you would create this.  You might ask on powerpc-discuss, or for more general
source issues return to opensolaris-discuss.

Note, that on Solaris, ld.so.1 is dependent on two instances of libc.  The core
ld.so.1 is built using libc_pic.a, an internal collection of libc modules
that allows ld.so.1 to reference basic system calls and thus be a self-contained
object.   ld.so.1 also has some less commonly used, more expensive functionality
that can require additional objects.  For example, LD_DEBUG causes liblddbg.so.4
to be loaded, and dldump() causes librtld.so.1() to be loaded, and loading
relocatable objects causes libld.so.4 (the link-editor) to be loaded.  These
objects have their own dependencies on libc, which is why you see libc.so.1 as a
(lazy) dependency.

The typical use of ld.so.1 requires no extra dependencies to be loaded.

-- 
Rod

Reply via email to