Nishikant Kapoor (H) writes:
 > Kapoor, Nishikant X wrote:
 > 
 > > > 1) Your system's libc version
 > > > 2) Your system's libdl version
 > > >
 > > >    ldd <yourjavadir>/bin/i386/green_threads/java
 > > >
 > 
 > nkapoor:/home/nkapoor> ldd $JAVA_HOME/bin/i386/green_threads/java
 >         libjava.so => not found
 >         libm.so.5 => /lib/libm.so.5.0.9
 >         libdl.so.1 => /lib/libdl.so.1.7.14
 >         libawt.so => not found
 >         libXpm.so.4 => /usr/X11R6/lib/libXpm.so.4
 >         libXt.so.6 => /usr/X11R6/lib/libXt.so.6
 >         libICE.so.6 => /usr/X11R6/lib/libICE.so.6
 >         libSM.so.6 => /usr/X11R6/lib/libSM.so.6
 >         libXext.so.6 => /usr/X11R6/lib/libXext.so.6
 >         libX11.so.6 => /usr/X11R6/lib/libX11.so.6
 >         libc.so.5 => /lib/libc.so.5.4.45
 >         libX11.so.6 => /usr/X11R6/lib/libX11.so.6.1
 >         libSM.so.6 => /usr/X11R6/lib/libSM.so.6.0
 >         libICE.so.6 => /usr/X11R6/lib/libICE.so.6.0
 > 
 > > 3) Whether you had to remove libc and libdl to make Java work for you
 > No.
 > 
 > Well, now that I see it, can anyone please tell me why do I have
 >         libjava.so => not found
 >         libawt.so => not found

This is easy:  Your system does not know about libjava and libawt, so ldd 
says it can't find them.  HOWEVER, when you run a java program (java, javac,
etc), the LD_LIBRARY_PATH environment variable (which tells libdl where to find
additional shared libraries), gets set to include the
<java>/lib/i386/green_threads directory, where libjava.so and libawt.so live,
and then the bin/i386/green_threads/java program (the actual executable) gets
run, so it can resolve references to things in libjava and libawt just fine.

Steve

Reply via email to