Opensuse 11.1 & soprano

Hi. I have a problem with sesame soprano backend. It don’t see libjvm
though openjdk is installed. It is necessary to work strigi/nepomuk on
kde 4.2.0. Please help.

Code:

bananikus@linux-ylbo:~> (Soprano::PluginManager) loading all plugins
(Soprano::PluginManager) searching plugin file from “/usr/share/soprano/plugins”
(Soprano::PluginManager) found plugin file “/usr/share/soprano/plugins/nquadparser.desktop”
(Soprano::PluginManager) plugin has proper version.
(Soprano::PluginManager) found parser plugin “nquadparser”
(Soprano::PluginManager) found plugin file “/usr/share/soprano/plugins/nquadserializer.desktop”
(Soprano::PluginManager) plugin has proper version.
(Soprano::PluginManager) found serializer plugin “nquadserializer”
(Soprano::PluginManager) found plugin file “/usr/share/soprano/plugins/raptorparser.desktop”
(Soprano::PluginManager) plugin has proper version.
(Soprano::PluginManager) found parser plugin “raptorparser”
(Soprano::PluginManager) found plugin file “/usr/share/soprano/plugins/raptorserializer.desktop”
(Soprano::PluginManager) plugin has proper version.
(Soprano::PluginManager) found serializer plugin “raptorserializer”
(Soprano::PluginManager) found plugin file “/usr/share/soprano/plugins/sesame2backend.desktop”
(Soprano::PluginManager) plugin has proper version.
(Soprano::PluginManager) found backend plugin “sesame2”
(Soprano::PluginManager) searching plugin file from “/usr/local/share/soprano/plugins”
(Soprano::PluginManager) searching plugin file from “/usr/share/soprano/plugins”
(Soprano::PluginManager) found plugin file “/usr/share/soprano/plugins/nquadparser.desktop”
(Soprano::PluginManager) plugin has proper version.
(Soprano::PluginManager) found plugin file “/usr/share/soprano/plugins/nquadserializer.desktop”
(Soprano::PluginManager) plugin has proper version.
(Soprano::PluginManager) found plugin file “/usr/share/soprano/plugins/raptorparser.desktop”
(Soprano::PluginManager) plugin has proper version.
(Soprano::PluginManager) found plugin file “/usr/share/soprano/plugins/raptorserializer.desktop”
(Soprano::PluginManager) plugin has proper version.
(Soprano::PluginManager) found plugin file “/usr/share/soprano/plugins/sesame2backend.desktop”
(Soprano::PluginManager) plugin has proper version.
(Soprano::PluginManager) searching plugin file from “/etc/opt/kde3/share/soprano/plugins”
(Soprano::PluginManager) searching plugin file from “/opt/kde3/share/soprano/plugins”
(Soprano::PluginManager) found no soprano plugin at “/usr/lib64/soprano/libsoprano_sesame2backend.so”
(Soprano::PluginManager) found no soprano plugin at “/usr/lib64/soprano/libsoprano_sesame2backend.so”

Code:

bananikus@linux-ylbo:~> ldd /usr/lib64/soprano/libsoprano_sesame2backend.so
linux-vdso.so.1 => (0x00007fff251ff000)
libsoprano.so.4 => /usr/lib64/libsoprano.so.4 (0x00007f8e1cbbc000)
libjvm.so => not found
libQtCore.so.4 => /usr/lib64/libQtCore.so.4 (0x00007f8e1c78e000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f8e1c572000)
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00007f8e1c265000)
libm.so.6 => /lib64/libm.so.6 (0x00007f8e1c00f000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f8e1bdf7000)
libc.so.6 => /lib64/libc.so.6 (0x00007f8e1ba9d000)
libz.so.1 => /lib64/libz.so.1 (0x00007f8e1b887000)
libgthread-2.0.so.0 => /usr/lib64/libgthread-2.0.so.0 (0x00007f8e1b682000)
librt.so.1 => /lib64/librt.so.1 (0x00007f8e1b478000)
libglib-2.0.so.0 => /usr/lib64/libglib-2.0.so.0 (0x00007f8e1b1b3000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f8e1afaf000)
/lib64/ld-linux-x86-64.so.2 (0x00007f8e1d0ef000)
libpcre.so.0 => /usr/lib64/libpcre.so.0 (0x00007f8e1ad7e000)


Bananikus

Bananikus’s Profile: http://forums.opensuse.org/member.php?userid=107
View this thread: http://forums.opensuse.org/showthread.php?t=406561

  1. Find libjvm.so (in my openSUSE 11.0 is in
    /usr/lib64/jvm/java-1.6.0-openjdk-1.2_b09/jre/lib/amd64/server/ )

  2. Make symbolics link:

Code:

ln -s /usr/lib64/jvm/java-1.6.0-openjdk-1.2_b09/jre/lib/amd64/server/libjvm.so /usr/lib64/libjvm.so

And soprano with sesame will be work.

PS. Pozdrowienia z Polski :wink:


7c0

7c0’s Profile: http://forums.opensuse.org/member.php?userid=21410
View this thread: http://forums.opensuse.org/showthread.php?t=406561

It Works! Thanks.

Dzięki. :slight_smile:


Bananikus

Bananikus’s Profile: http://forums.opensuse.org/member.php?userid=107
View this thread: http://forums.opensuse.org/showthread.php?t=406561

Thanks, this fixed it for me too. Is there a package that is supposed to
install /usr/lib/libjvm.so or is it a problem with the
soprano-backend-sesame package?


chaz6

chaz6’s Profile: http://forums.opensuse.org/member.php?userid=12372
View this thread: http://forums.opensuse.org/showthread.php?t=406561

Upon further investigation the library libsoprano_sesame2backend.so has
a RUNPATH of /usr/lib/jvm/java/jre/lib/i386/client, so it seems it was
compiled on a system without the opensuse java package. However, the
opensuse java packages may also take some blame for not linking
/usr/lib/jvm to the path of the currently installed jvm.


chaz6

chaz6’s Profile: http://forums.opensuse.org/member.php?userid=12372
View this thread: http://forums.opensuse.org/showthread.php?t=406561

Rather than linking /usr/lib/libjvm.so I have instead linked
/usr/lib/jvm/java/jre -> /etc/alternatives/jre.

Though now I have the problem as follows:-

Code:

106 [main] INFO org.openrdf.query.parser.QueryParserRegistry - Registered service class org.openrdf.query.parser.serql.SeRQLParserFactory
117 [main] INFO org.openrdf.query.parser.QueryParserRegistry - Registered service class org.openrdf.query.parser.sparql.SPARQLParserFactory
Exception in thread “main” org.openrdf.repository.RepositoryException: java.io.FileNotFoundException: /usr/lib/jvm/java/namespaces.dat (Permission denied)
at org.openrdf.repository.sail.SailRepository.initialize(SailRepository.java:85)
Caused by: org.openrdf.sail.SailException: java.io.FileNotFoundException: /usr/lib/jvm/java/namespaces.dat (Permission denied)
at org.openrdf.sail.nativerdf.NativeStore.initialize(NativeStore.java:186)
at org.openrdf.repository.sail.SailRepository.initialize(SailRepository.java:82)
Caused by: java.io.FileNotFoundException: /usr/lib/jvm/java/namespaces.dat (Permission denied)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:209)
at java.io.FileOutputStream.<init>(FileOutputStream.java:160)
at org.openrdf.sail.nativerdf.NamespaceStore.writeNamespacesToFile(NamespaceStore.java:170)
at org.openrdf.sail.nativerdf.NamespaceStore.<init>(NamespaceStore.java:94)
at org.openrdf.sail.nativerdf.NativeStore.initialize(NativeStore.java:181)
… 1 more
Failed to create Model: Success (0):


Apparently this can be fixed by installing the Sun JDK instead of
OpenJDK.


chaz6

chaz6’s Profile: http://forums.opensuse.org/member.php?userid=12372
View this thread: http://forums.opensuse.org/showthread.php?t=406561

If I chmod 777 /usr/lib/jvm/java then run sopranocmd, it works, but it
seems to store data there so it is not suitable for multiple users.

Code:

chaz@linux-bptb:/usr/lib/jvm/java> ls -l /usr/lib/jvm/java
total 40
lrwxrwxrwx 1 root root 21 2009-02-08 13:24 jre → /etc/alternatives/jre
-rw-r–r-- 1 chaz users 4 2009-02-08 13:35 namespaces.dat
-rw-r–r-- 1 chaz users 16 2009-02-08 13:35 triples-cspo.dat
-rw-r–r-- 1 chaz users 16 2009-02-08 13:35 triples-opsc.dat
-rw-r–r-- 1 chaz users 16 2009-02-08 13:35 triples-posc.dat
-rw-r–r-- 1 chaz users 116 2009-02-08 13:35 triples.prop
-rw-r–r-- 1 chaz users 16 2009-02-08 13:35 triples-spoc.dat
-rw-r–r-- 1 chaz users 4 2009-02-08 13:35 values.dat
-rw-r–r-- 1 chaz users 4368 2009-02-08 13:35 values.hash
-rw-r–r-- 1 chaz users 8 2009-02-08 13:35 values.id


chaz6

chaz6’s Profile: http://forums.opensuse.org/member.php?userid=12372
View this thread: http://forums.opensuse.org/showthread.php?t=406561