[fedora-java] libvirt-java bindings

Mary Ellen Foster foster at in.tum.de
Wed Jul 2 10:11:34 UTC 2008


2008/7/1 David Walluck <david at zarb.org>:
> Mary Ellen Foster wrote:
> | I have one recent package that does this (specifies openjdk on F9+ and
> | icedtea on F8) and one that doesn't (just wants java >= 1.5). The
> | first package uses JNI and needs a Sun-like JVM to work (or at least
> | it took more autotools hacking than I cared to try to make it work),
> | and if I just put Requires: java it tended to grab gcj. I guess I
> | could also put java > 1.5, but the issue isn't the 1.5-ness, it's the
> | Sun-style JNI classes.
>
> This is not an issue with the java-devel packages, but rather an issue
> with either the upstream configure or an issue with the GCJ packaging.
>
> If it is lack of JNI support in GCJ, that is one thing. If it is simply
> that the package is expecting a differnt layout that is another.

I just did a bit of hacking, and it is possible to build the package
against gcj instead of openjdk. There were two things to fix:
- the "configure" script followed symlinks from javac to find the JNI
include dir. Since the symlinks for gcj ground out at /usr/bin/ecj, it
ended up looking for /usr/include/jni.h.
- It also wanted to hardcode "-ljava -lverify -ljvm" on the gcc line,
which isn't right for gcj

But I'm not sure if I want to make these modifications to the package.
If I build a JNI program against gcj, can the resulting .so be used
with Sun-like JVMs? How does this work? Is it documented anywhere?

Thanks,

MEF

-- 
Mary Ellen Foster -- http://homepages.inf.ed.ac.uk/mef/
Informatik 6: Robotics and Embedded Systems, Technische Universität München
and ICCS, School of Informatics, University of Edinburgh




More information about the fedora-devel-java-list mailing list