[OmniOS-discuss] Bug report: java in r151008 missing libjli.so

Olaf Marzocchi lists at marzocchi.net
Tue Jan 28 22:48:33 UTC 2014


Hello,
“java” doesn’t work in r151008 (libjli.so not found) unless the dev package is installed.
Check:

$ java  
ld.so.1: java: fatal: libjli.so: open failed: No such file or directory
Killed
$ ldd /usr/bin/java
        libthread.so.1 =>        /lib/libthread.so.1
        libjli.so =>     (file not found)
        libdl.so.1 =>    /lib/libdl.so.1
        libc.so.1 =>     /lib/libc.so.1
        libm.so.2 =>     /lib/libm.so.2
$ env
TERM=xterm-256color
SHELL=/bin/bash
CLICOLOR=1
LSCOLORS=gxfxcxdxbxegedabagacad
PATH=/usr/bin:/bin:/usr/local/bin:/usr/sbin:/opt/omni/bin/
SHLVL=1
_=/usr/bin/env
$ pkg search libjli.so
INDEX      ACTION VALUE                               PACKAGE
basename   file   usr/java/lib/i386/jli/libjli.so     pkg:/developer/java/jdk at 0.5.11-0.151008
basename   file   usr/java/jre/lib/i386/jli/libjli.so pkg:/runtime/java at 0.5.11-0.151008
$ pkg info java
          Name: runtime/java
       Summary: Open-source implementation of the seventh edition of the Java SE Platform
         State: Installed
     Publisher: omnios
       Version: 0.5.11 (jdk7u21-b30)
 Build Release: 5.11
        Branch: 0.151008
Packaging Date: Wed Dec  4 20:10:13 2013
          Size: 105.29 MB
          FMRI: pkg://omnios/runtime/java@0.5.11,5.11-0.151008:20131204T201013Z
$ ldd -s `which java`
…
   find object=libjli.so; required by /usr/java/bin/java
    search path=$ORIGIN/../lib/i386/jli:/usr/openwin/lib  (RUNPATH/RPATH from file /usr/java/bin/java)
    trying path=/usr/java/bin/../lib/i386/jli/libjli.so
    trying path=/usr/openwin/lib/libjli.so
    search path=/lib:/usr/lib:/usr/local/lib  (configuration default - /var/ld/ld.config)
    trying path=/lib/libjli.so
    trying path=/usr/lib/libjli.so
    trying path=/usr/local/lib/libjli.so
	libjli.so =>	 (file not found)
…

It is not found because the file is not in /usr/java/bin/../lib/i386/jli/libjli.so but in /usr/java/bin/../jre/lib/i386/jli/libjli.so (the difference is “/jre”).

After installing the dev package, everything is fine.
The standard package has been linked on the dev libraries.
Checked on a clean install.

I don’t know whether this also bring lower performances (I expect a dev lib to be slower, but I’m no expert).

Regards
Olaf


More information about the OmniOS-discuss mailing list