Chris Marusich writes:

> Roel Janssen <r...@gnu.org> writes:
>
>> 1. Fix the recipe to make sure libjvm.so is found, and thus libnet.so is
>> linked correctly.
>>
>> 2. Copy or make a symlink of libjvm.so to the parent directory
>>    (lib/amd64), where the other libraries are.  Maybe then libnet.so can
>>    find libjvm.so.
>
> (1) seems better than (2) if possible, but either of those solutions
> seem OK to me.  But to be honest, I don't understand why this isn't a
> problem for icedtea outside of Guix.  What are we doing that is
> different which prevents the library from being found?

Thanks for your reply!

I agree that (1) would be better than (2).  The only problem I see with
this is that I don't see how to achieve (1), but I do see how to achieve
(2).

I tried running that Java app with CentOS's Java (openjdk 1.7.0), and it
has the exact same problem:

$ ldd /usr/lib/jvm/java-1.7.0-openjdk/jre/lib/amd64/libnet.so 
        linux-vdso.so.1 =>  (0x00007ffcc153d000)
        libjvm.so => not found
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f0b70d7e000)
        libgconf-2.so.4 => /lib64/libgconf-2.so.4 (0x00007f0b70b4d000)
        libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007f0b70816000)
        libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x00007f0b705c5000)
        libgio-2.0.so.0 => /lib64/libgio-2.0.so.0 (0x00007f0b70245000)
        libjava.so => 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.121-2.6.8.0.el7_3.x86_64/jre/lib/amd64/./libjava.so
 (0x00007f0b70019000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f0b6fc57000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f0b711ce000)
        libgmodule-2.0.so.0 => /lib64/libgmodule-2.0.so.0 (0x00007f0b6fa53000)
        libdbus-glib-1.so.2 => /lib64/libdbus-glib-1.so.2 (0x00007f0b6f82b000)
        libdbus-1.so.3 => /lib64/libdbus-1.so.3 (0x00007f0b6f5e2000)
        libffi.so.6 => /lib64/libffi.so.6 (0x00007f0b6f3da000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f0b6f1d6000)
        libz.so.1 => /lib64/libz.so.1 (0x00007f0b6efbf000)
        libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f0b6ed98000)
        libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f0b6eb7e000)
        libjvm.so => not found
        libverify.so => 
/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.121-2.6.8.0.el7_3.x86_64/jre/lib/amd64/./libverify.so
 (0x00007f0b6e96e000)
        librt.so.1 => /lib64/librt.so.1 (0x00007f0b6e765000)
        libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f0b6e504000)
        libjvm.so => not found

>
> Solution (3) feels like more of a hack than (2), so I'm not sure about
> it.  Maybe other have other opinions?

I agree that we should avoid solution (3).

Kind regards,
Roel Janssen

Reply via email to